我正在尝试查看表A中是否缺少表B中的任何行。
为此,我使用以下查询:
SELECT t1.cusa
FROM patch t1
LEFT JOIN trophy t2
ON t2.titleid = t1.titleid
WHERE t2.titleid IS NULL
该查询以前曾起作用,但是现在trophy
表具有近200.000行,这非常慢。我已经等待了5分钟才能执行它,但它仍在加载并最终超时。
有什么方法可以加快查询速度吗?
答案 0 :(得分:1)
在两个表(尤其是t2)上的titleId中添加索引是获得更好性能的最快方法。对于SQL Server来说,200K记录不算什么。
答案 1 :(得分:0)
尝试一下,它可能会更好一些!
SELECT t1.cusa
FROM patch t1
WHERE NOT EXISTS (SELECT 1
FROM trophy t2
WHERE t2.titleid = t1.titleid );