我有一個MySql表,有3個coluomn:Nip,Bidang和Total。 我想統計與同一bidang的總和的最小值和最大值。但我不想計算所有彩色的最小值和最大值。顏色最小值最大值,但有一定的條件
的樣本數據:
NIP Bidang Total
1 A 10
2 A 5
3 A 1
4 B 4
5 B 7
6 C 8
7 C 9
而結果列:
MIN
1
1
1
4
4
8
8
我有一個MySql表,有3個coluomn:Nip,Bidang和Total。 我想統計與同一bidang的總和的最小值和最大值。但我不想計算所有彩色的最小值和最大值。顏色最小值最大值,但有一定的條件
的樣本數據:
NIP Bidang Total
1 A 10
2 A 5
3 A 1
4 B 4
5 B 7
6 C 8
7 C 9
而結果列:
MIN
1
1
1
4
4
8
8
只要做到這一點:
SELECT * FROM
(
(SELECT Bidang FROM TableName) T1 LEFT OUTER JOIN
(SELECT bidang, MIN(Total) MinVal, MAX(Total) MaxVal
FROM TableName
GROUP BY Bidang) T2 ON T1.Bidang=T2.Bidang
)
結果:
BIDANG MINVAL MAXVAL
A 1 10
A 1 10
A 1 10
B 4 7
B 4 7
C 8 9
C 8 9
參見導致SQL Fiddle。
編輯
要查看總計列此外,添加Total
先查詢。
SELECT * FROM
(
(SELECT NIP,Bidang,Total FROM TableName) T1 LEFT OUTER JOIN
(SELECT bidang, MIN(total) MinVal, MAX(Total) MaxVal
FROM TableName
GROUP BY Bidang) T2 ON T1.Bidang=T2.Bidang
)
結果:
NIP BIDANG TOTAL MINVAL MAXVAL
1 A 10 1 10
2 A 5 1 10
3 A 1 1 10
4 B 4 4 7
5 B 7 4 7
6 C 8 8 9
7 C 9 8 9
參見導致SQL Fiddle。
謝謝。但是我的問題NIP,Bidang和Total也顯示出來,總的值總是錯的。我想要的結果是這樣的: [鏈接](https://docs.google.com/spreadsheet/ccc?key=0At6v8cxsoOU4dHBnUmx6aEUtdzIwX0hWdlB3UGpPcXc#gid=0) – user3440030
好的,謝謝你的幫助 – user3440030
在我的sql coloumn bidang是寫兩次,對於這種情況有什麼解決方案? – user3440030
Select bidang, min(total) MyMin, Max(total) myMax
From tableName
group by bidang
NIP bidang total
1 A 10
2 A 5
3 A 1
4 B 4
5 B 7
6 C 8
7 C 9
應該返回
A 1 10
B 4 7
C 8 9
Iam Sory,我無法發佈我的表格或圖片。我的樣本表Coloumn NIP = 1 2 3 4 5 6 7,Coloumn Bidang = A A A B B C C,Coloumn Total = 10 5 1 4 7 8 9,結果列MIN = 1 1 1 4 4 8 8.謝謝 – user3440030
編輯問題。添加示例數據。添加你想得到的結果。 –