重新写我的查询我有这个表:我需要一些帮助,在MySQL
ID ITEM
-----------------
0001 345
0001 345
0001 120
0002 567
0002 034
0002 567
0003 567
0004 533
0004 008
......
,为了得到这样的结果:
ID ITEM CNT
1 008 0
1 034 0
1 120 1
1 345 2
1 533 0
1 567 0
2 008 0
2 034 1
...
CNT是每个项目的的出现每个不同的ID
我运行此查询:
select driver.id, driver.item, coalesce(count(t1.id), 0)
from (select id.id, item.item
from (select distinct id from Table1) id cross join
(select distinct item from Table1) item
) driver left outer join
Table1 t1
on driver.id = t1.id and driver.item = t1.item
group by driver.id, driver.item;
此查询永远服用,仍然一天后,还没有完成.. 这是结果的说明:
idx_id和idx_code是编号和项目索引
灿你给我一些关于如何改进我的查询的提示,这样它可以运行得更快,并希望完成?谢谢
结果并不能很好地解释你想达到什么。 – ep0
[Count计数查询花费的时间太长 - 已超过24小时]的可能重复(http://stackoverflow.com/questions/17996652/count-query-is-taking-too-long-over-24-hours-have - 已通过) – Chococroc
CNT是每个不同ID的每个项目的出现次数 – user2578185