Mysql 系列文章主页 =============== 1 准备数据 1.1 建表 DROP TABLE IF EXISTS staff; CREATE TABLE IF NOT EXISTS staff ( id INT PRIMARY KEY auto_increment, name ), age INT, pos ) COMMENT '职位', salary ,) ); 1.2 插入数据 , ); 2 测试&Explain分析 2.1 有索引的情况下%的影响(提出问题) 2.1.1 建立
这里要纠正一个网上很多教程说的模糊匹配不能走索引的说法,因为在看<收获,不止SQL优化>一书,里面举例说到了,并且自己也跟着例子实践了一下,确实like一些特殊情况也是可以走索引的 例子来自<收获,不止SQL优化>一书,实践准备: //建表,注意要非空数据 drop table t purge; create table t as select * from dba_objects where object_id is not null; select * from t; //更新
前言 上周新系统改版上线,上线第二天就出现了较多的线上慢sql查询,紧接着dba 给出了定位及解决方案,这里较多的是使用延迟关联去优化. 而我对于这个延迟关联也是第一次听说(o(╥﹏╥)o),所以今天一定要学习并产出一篇学习笔记.(^▽^) 回表 我们都知道InnoDB采用的B+ tree来实现索引的,索引又分为主键索引(聚簇索引)和普通索引(二级索引). 那么我们就来看下基于主键索引和普通索引的查询有什么区别? 如果语句是select * from T where ID=500,即主键查询方式
SELECT `id`,`weixin_id`,`user_name`,`sex`,`area_id`,`address_near`,`phone`,`create_time`,`import_user_name`,`call_phone_num`,`browse_num`,`disable_status`,`remark` FROM `f_share_info` WHERE ( concat(phone, IFNULL(share_detail, ''),IFNULL(search_save_
工作中遇到个情况 sql如下: SELECT org.id orgid,org."path" FROM ( SELECT * FROM A INNER JOIN t_org org ON ... INNER JOIN C org ON ... INNER JOIN D b ON ... INNER JOIN E bsns ON ... LEFT JOIN F logopttp ON ... LEFT JOIN G sysopttp ON ... WHERE = -- AND org.P
一.like查询与索引 在oracle里的一个超级大的表中,我们的where条件的列有建索引的话,会走索引唯一扫描INDEX UNIQUE SCAN.如select * from table where code = 'Cod25',而如下这些语句哪些会走索引呢? select * from table where code like 'Code2%' select * from table where code like '%ode2%' select * from table where c