我在查詢形成中遇到問題,需要您的輸入。情景如下:查詢形成中的問題
我有三種顏色的藍色,黃色和紅色的T恤衫。每個學生只能綁定一件顏色的T恤。你能幫我找出班級中每種顏色的T恤數量嗎(2/3/4)是指班級2/3/4。
在DB我們studentId,階級和stShirtColor(B/Y/R)
在此先感謝
我在查詢形成中遇到問題,需要您的輸入。情景如下:查詢形成中的問題
我有三種顏色的藍色,黃色和紅色的T恤衫。每個學生只能綁定一件顏色的T恤。你能幫我找出班級中每種顏色的T恤數量嗎(2/3/4)是指班級2/3/4。
在DB我們studentId,階級和stShirtColor(B/Y/R)
在此先感謝
你可以通過下面的查詢打印T恤,其計的顏色爲每個類,
SELECT class, stShirtColor, count(*) as NUMBER_OF_TSHIRST FROM YOUR_TABLE WHERE class IN (2,3,4) group by class, stShirtColor;
分組依據將組織您的數據基於類。使用GROUP BY時,您可以使用大多數aggregate functions。
這可以在MySQL中運行,但不能在ms sql server或oracle中運行。同樣,它應該是'class by class,stShirtColor',因爲OP要'每班顏色的T恤數量(2/3/4)' – 2014-11-21 07:24:36
除了MySQL之外,每個DBMS都會拒絕這條語句。 – 2014-11-21 07:26:51
是的。我只寫了MYSQL的查詢。 – 2014-11-21 08:10:52
這是你在找什麼:
SELECT class,
stShirtColor,
Count(*) AS NumberOfTshirts
FROM yourtable
WHERE class IN(2, 3, 4)
GROUP BY class,stShirtColor
where
條款將過濾出來的結果,因爲你需要什麼,group by
將使class,stShirtColor
組合的組,並最終COUNT(*)會給你算這樣的組。
確定其簡單。告訴我們你現在擁有什麼,我們會嘗試糾正它? – SMA 2014-11-21 07:02:26
我知道CASE將在這裏使用,但沒有做任何事情,因爲我不知道如何使用增量在sql – Prashant 2014-11-21 07:09:02
好吧,會有許多類似的問題,所以嘗試搜索和定製它,如果需要。如果你仍然沒有得到它,在這裏發佈。 – SMA 2014-11-21 07:13:02