我在徘徊天气UNION会导致桌面锁?
数据库适用于MyIsam引擎。
我从同一个表中选择3个数据片段并使用UNION
select *
from table1
where date between '2015-07-01' and current_date() and id in ( 2281,6691, 77854, 65847) and ctry = 'USA'
union
select *
from table1
where date between '2015-07-01' and current_date() and id in ( 2281, 1111, 86785,62257) and ctry = 'CA'
union
select *
from table1
where date between '2015-07-01' and current_date() and id= 1759
答案 0 :(得分:1)
MYISAM跟随表级锁定并且innodb跟随行级锁定。所以,在你的情况下你加入3个表,MYISAM将锁定1个表然后为其他表...
答案 1 :(得分:0)
MyISAM将执行表级锁定 - 大概3次(每个联合1次)。
以下索引应该使查询运行得更快:
INDEX(ctry, id, date)
INDEX(id, date)