看板 Database 關於我們 聯絡資訊
: 計算頻率: : Select dno,salary,count(*) From Table Group By dno,salary : 這裡count(*)不是頻率,但每個dno中count(*)最多的就是頻率最高 : 所以接下來找每個dno中頻率最高的就可以... : Select Distinct T1.dbo,T1.Salary : From Table T1 : Where salary=(select top 1 T2.salary : from Table T2 : where T1.dno=T2.dno : group by T2.dno : order by count(*) desc) : 只會M$-SQL,請自行轉成MySQL語法 ------------------------------------------------ 轉換後的結果如下,還是不行 這招我昨天有想到,但還是跑不出來 Q_Q 我應該沒有轉換錯吧...?! mysql> Select Distinct T1.dno,T1.Salary -> From employee as T1 -> Where salary=(select T2.salary -> from employee as T2 -> group by T2.dno -> order by count(*) desc -> limit 1); +------+--------+ | dno | Salary | +------+--------+ | 5 | 30000 | +------+--------+ 1 row in set (0.00 sec) Where salary=(select T2.salary ...top 1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 這樣的話這裡面是不是只剩下一筆 把 = 改成 IN 連語法都不過了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.31.15 ※ 編輯: fantasywater 來自: 61.228.31.15 (02/04 14:08)