Re: [SQL ] 如何選出count(*)=1 的資料?

看板Database作者 (人比人Cheese人)時間18年前 (2007/08/18 01:56), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串7/9 (看更多)
※ 引述《misssun (我要炸掉了)》之銘言: : SELECT distinct a.日期, : a..CUSTOMERID, : a..AGENTID : FROM AA a : WHERE a.customerid in : (select b.customerid : from AA b : where (日期區間) : group by customerid : having count(*) = 1) : AND (日期區間) --這邊不+日期條件的話,最後的結果會有誤喔~~ 看了你最終的SQL語法, 還是覺得不需要使用IN的子查詢, 因為在以customerid分群,count(*)=1的情況, 日期和agentid也只會有一筆資料, 故可以用MAX()或MIN()等聚合函數一起選取, 其結果並不會有差別,如下: SELECT CUSTOMERID,MAX(AGENTID),MAX(日期) FROM AA WHERE (日期區間) GROUP BY CUSTOMERID HAVING COUNT(*)=1; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.166.73.219
文章代碼(AID): #16nU5Vbz (Database)
討論串 (同標題文章)
文章代碼(AID): #16nU5Vbz (Database)