我有一个查询
SELECT DISTINCT phoneNum
FROM `Transaction_Register`
WHERE phoneNum NOT IN (SELECT phoneNum FROM `Subscription`)
LIMIT 0 , 1000000
执行b/c
Transaction_Register
表有数百万条记录需要太多时间有上述查询的替代方法,如果有的话,我将不胜感激。
最佳答案
一种替代方法是使用LEFT JOIN:
select distinct t.phoneNum
from Transaction_Register t
left join Subscription s
on t.phoneNum = s.phoneNum
where s.phoneNum is null
LIMIT 0 , 1000000;
参见SQL Fiddle with Demo