1. 程式人生 > >聚合函數下查詢多個列

聚合函數下查詢多個列

log sel tco sele pat 手機 class ntc 出現一次

查詢聚合函數符合某個條件的記錄,只能查詢聚合的列,不能查詢其他列,例如查詢手機號出現一次以上的記錄,只能下面這樣

select Phone,count(phone)
from PeisPatient group by Phone having count(phone)>1

加上其他列就不行

select PatientCode,Phone,count(phone),IDCardNo,PatientName,ID_Patient
from PeisPatient group by Phone,PatientCode,IDCardNo,PatientName,ID_Patient having count(phone)>1

但可以用個性能不太好的語句實現:

select PatientCode,IDCardNo,PatientName,ID_Patient,phone from PeisPatient where phone in
(
select Phone
from PeisPatient group by Phone having count(phone)>1 ) order by phone

聚合函數下查詢多個列