推 PsMonkey:他還要平均的耶.,... XD (我一定會交給前端作 XD) 02/04 14:45
※ 引述《fantasywater (狂想)》之銘言:
: +------+--------+ 如左表
: | dno | salary | 請問:要找出每一個dno裡面薪水出現頻率最多
: +------+--------+ 得查詢應該要怎麼寫?
: | 5 | 30000 |
: | 5 | 25000 | 我只會列出每一個dno裡面最高最低和頻均的薪水
: | 5 | 25000 | 不知道如果要先計算出現頻率,
: | 5 | 38000 | 再把頻率最高的結果抓出來的查詢怎麼寫
: | 1 | 55000 |
: | 4 | 43000 |
: | 4 | 25000 |
: | 4 | 25000 |
: +------+--------+
: +------+--------+ 左邊這個是我希望得到的結果
: | dno | salary | MYSQL或是標準SQL裡面有可以計算出現頻率最多的方法嗎?
: +------+--------+
: | 5 | 25000 |
: | 1 | 55000 |
: | 4 | 25000 |
: +------+--------+
計算頻率:
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語法
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.64.238.212