mysqlunionall无法走索引

mysqlunionall无法走索引,第1张

mysqlunionall无法走索引11 27

1. like %%失效。 方案:改为like %,只写后面的%就能走索引。

2. 虽然有索引,但是查询条件没有索引列或者order by 排序没有索引列。 方案:让查询条件有索引列

3. 索引列存在null值的情况。 方案:索引列如果没有值,则给空字符串或者数字的0,总之就是不要设置null

mysql中,union和union all都代表合并查询,但是区别是,union会在合并的过程中,去掉完全重复的数据,而union all则不会去除完全重复的数据。

工具:mysql 5.6

步骤:

1、如图,tab1和tab2中的数据分别如下:

2、执行union语句:

select * from tab1 

union

select * from tab2

3、运行结果(去掉两个表中完全重复的数据):

4、执行union all语句:

select * from tab1 

union all

select * from tab2

5、运行结果(未去掉两个表中完全重复的数据):


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6167919.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-17
下一篇 2023-03-17

发表评论

登录后才能评论

评论列表(0条)

保存