sql查询问题内连接

时间:2011-06-29 15:43:36

标签: sql sql-server sql-server-2005

LEFT JOIN PatientClinics AB ON PPhy.PatientID = AB.PatientID 
     JOIN Clinics CL ON CL.ID = AB.ClinicID 
                    AND COUNT(AB.ClinicID) = 1 

我使用Count(AB.ClinicID) = 1收到错误(ClinicID在表格中有重复值) 我想只使用ClinicId的每个重复值的1个值来产生结果)

我犯了什么错误?

3 个答案:

答案 0 :(得分:4)

我之前从未见过COUNT() JOIN。也许你应该使用:

HAVING COUNT(AB.ClinicID) = 1

代替。

答案 1 :(得分:0)

可能会调查HAVING子句,而不是使用放置它的COUNT

如果没有完整的查询,很难提供帮助。

答案 2 :(得分:0)

Count()不能用作连接/过滤谓词。但是,它可以在HAVING子句中使用。您应该包括整个查询,以便更好地了解如何重写它。