2011-06-29 150 views
0
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個值產生結果的重複值 )sql查詢問題內部聯接

什麼錯誤時我在做什麼?

+0

你可以發佈整個查詢,否則它很難幫助.. – StevieG

+0

我同意 - 需要更多的SQL才能得到真正的答案。 –

回答

0

Count()不能用作連接/過濾謂詞。但是,它可以在HAVING子句中使用。您應該包含整個查詢,以便更好地瞭解如何重寫它。

+0

它的工作原理。謝謝 – user680865

4

我從來沒有見過COUNT()以前用在JOIN之前。也許你應該使用:

HAVING COUNT(AB.ClinicID) = 1

代替。

+0

+1 - 這應該是一個過濾器而不是連接條件 – JNK

+0

是的。 –

+0

@OMG小馬:不錯的想法:o) –

0

也許調查了HAVING子句,而不是使用COUNT這個位置。

如果沒有完整的查詢,很難提供幫助。