【发布时间】:2011-09-18 21:59:53
【问题描述】:
我之前问过一个关于替代使用 SELECT DISTINCT 的问题,因为查询需要更长的时间来执行。建议我使用 EXISTS,它的效果要好得多(0 秒执行与之前的 44 秒执行相比。我对查询语法不太熟悉,但正在学习。我希望有人能够在不使用的情况下改写以下查询DISTINCT,最好使用 EXISTS(因为它以前工作得很好)。感谢任何帮助。
select distinct EM.Employee,
rtrim(EM.FirstName) + ' ' + rtrim(EM.LastName) as Name
from EM EM
inner join PR PR
on EM.Employee = PR.ProjMgr
where PR.WTS1 in (Select distinct WTS1
from TabFields
where custInclude = 'Y' and WTS2 = '')
and PR.WTS2 = ''
order by Name
【问题讨论】:
-
您应该尝试理解上一个问题的答案并将其应用到这个问题上。如果您只是将论坛中的答案复制粘贴到您的代码中而不试图理解,那么您正在朝着成为代码猴子的方向走下坡路......
-
+100000000000000000 致 Remus 指出了解你在做什么更重要。
-
这是同一个查询,但您之前的查询已经过清理了吗?仅供参考:stackoverflow.com/q/6414550/27535
-
这是在同一个数据库上使用的另一个查询。我试了一下你的查询,gbn,它在 0 秒内完美运行。我希望将相同的结构应用于上述查询,但遇到了一些问题。
标签: sql-server select distinct