mysql左连接
1.on 后面的条件和where 后面的条件的区别
查询语句开始 会根据 on后面的条件创建一张虚拟表,左边表是全部数据,右边表会根据on后面的条件进行筛选。
然后再根据where后面的条件进行筛选虚拟表中的数据作为最终数据
所以如果是筛选右表中的条件 放在了where 中则则会过滤掉 部分左表中的数据
结论:筛选右表的条件和左右表关联的条件写在on中 筛选左表的条件写在where中
2.右表中的条件放在on中 如果右表的数据量很大的情况下会有很长的查询时间 是因为创建虚拟表的时候由于数据量大 查询条件没有索引造成的 所以相应的增加索引进行查询。
3.创建索引
alter table tableName add Index indexName(clum);
ALTER TABLE optable_task_item ADD INDEX task_id ( `task_id` );
4.那么where 中的条件创建索引时候有用呢?
相关推荐
CoderToy 2020-11-16
emmm00 2020-11-17
王艺强 2020-11-17
ribavnu 2020-11-16
bianruifeng 2020-11-16
wangshuangbao 2020-11-13
苏康申 2020-11-13
vivenwan 2020-11-13
moyekongling 2020-11-13
云中舞步 2020-11-12
要啥自行车一把梭 2020-11-12
aydh 2020-11-12
kuwoyinlehe 2020-11-12
minerk 2020-11-12
vitasfly 2020-11-12
jazywoo在路上 2020-11-11
敏敏张 2020-11-11
世樹 2020-11-11