看板 Database 關於我們 聯絡資訊
DB資訊:PostgreSQL 作業系統:FreeBSD 程式語言:PHP 在一個考試資料表中,我想要找出所有成績相同的學生並且計算重複數量, 所以我寫了: SELECT grade, COUNT(*) AS count FROM student GROUP BY grade HAVING (COUNT(*) > 1) 運作無誤,會顯示所有相同成績的資料,第二欄則顯示重複數量。 但是該資料表是將每次測驗都寫在一起,用欄位 s 區隔,因此必須加入 s 篩選, 所以我加了 SubQuery: SELECT grade FROM student WHERE s=3 AND grade IN ( SELECT grade FROM student GROUP BY grade HAVING (COUNT(*) > 1)) 這樣運作也是正常的,只是我就無法加入一個 COUNT 欄位來計算重複數量了。 這個 COUNT(*) AS count 不管加在哪裡都不對,不知各位先進有無方法可以 讓這個 SQL 有加入計算重複數量欄位的功能? 註:用程式語言來計算零難度,我已經用 PHP 計算了,只是想知道有沒有辦法   直接用 SQL 計算。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.144.67
bebolee:加在最外圍再GROUP BY一次不可以嗎? 05/31 13:31