【发布时间】:2010-10-07 05:58:59
【问题描述】:
我有一个使用子查询的查询,我想重写为一个连接,以获得更好的性能。
子查询使用 DISTINCT 因为有很多记录,我遇到的问题是当我使用连接时它们在连接中多次结束。
那么我该如何重写这样的查询以使用连接:
SELECT *
FROM table1 a
JOIN table2 b
ON b.field1 = a.field1
WHERE b.field3 = 1531
AND a.field4 = 0
AND a.field5 IN (SELECT DISTINCT field5
FROM table3
WHERE field6 = 172)
【问题讨论】: