2016-11-09 19 views
2
Name | Amount | Date 
_____________________ 
Jacob | 15 | 1-Oct-16 

Jacob | 50 | 2-Oct-16 

Ethan | 24 | 3-Oct-16 

Jacob | 30 | 3-Oct-16 

William | 17 | 1-Oct-16 

William | 11 | 2-Oct-16 

Ethan | 36 | 3-Oct-16 

Ethan | 9 | 1-Oct-16 

付きで私はテーブルの上に持っている、と私は最後の5日間SQLグループは、ケース

Name | 5-oct-16 | 4-oct-16 | 3-oct-16 | 2-oct-16| 1-oct-16 
___________________________________________________________ 

Jacob | 0  | 0  |30   | 50  | 15 
Ethan | 0  | 0  |60   | 0  | 9 
William | 0  | 0  |0   | 11  | 17 

分離最後の5日間の量の合計が名前のことでグループ化するようなものを金額の合計をしたいです。

答えて

3

私はあなたが条件付き集約したいと思う:

SELECT Name, 
     SUM(CASE DATE WHEN '2016-10-05' THEN Amount ELSE 0 END) as amount_2016105, 
     SUM(CASE DATE WHEN '2016-10-04' THEN Amount ELSE 0 END) as amount_2016104, 
     SUM(CASE DATE WHEN '2016-10-03' THEN Amount ELSE 0 END) as amount_2016103, 
     SUM(CASE DATE WHEN '2016-10-02' THEN Amount ELSE 0 END) as amount_2016102, 
     SUM(CASE DATE WHEN '2016-10-01' THEN Amount ELSE 0 END) as amount_2016101 
FROM MyTable 
GROUP BY Name; 
+0

ありがとうを.....それが働きました。 – SAURABH