我有兩個表:添加列查詢基於對先前查詢
+-----------+
| Customer |
+-----------+
| ID | Name |
+----+------+
| 1 | Jack |
+----+------+
| 2 | John |
+----+------+
+----------------------------------------+
| Bill |
+----------------------------------------+
| ID | Customer_ID | date | amount |
+----+-------------+------------+--------+
| 1 | 1 | 01.01.2015 | 10$ |
+----+-------------+------------+--------+
| 2 | 1 | 01.01.2014 | 20$ |
+----+-------------+------------+--------+
| 3 | 2 | 01.01.2015 | 5$ |
+----+-------------+------------+--------+
| 4 | 2 | 01.02.2015 | 50$ |
+----+-------------+------------+--------+
| 5 | 2 | 01.01.2014 | 15$ |
+----+-------------+------------+--------+
我需要知道所有的賬單客戶在一年內拿到的總和。
這很簡單:
SELECT
SUM(Bill.amount), Customer.Name
FROM
Customer
INNER JOIN
Bill ON Customer.ID = Bill.Customer_ID
WHERE
Bill.date BETWEEN #20150101# AND #20151231#
GROUP BY
Customer.Name
困難的部分是,我需要在一個表,以顯示查詢多年的結果是這樣的:
+-------------------------------------------+
| sales to customer |
+-------------------------------------------+
| Customer_ID | Customer_Name | 2015 | 2014 |
+-------------+---------------+------+------+
| 1 | jack | 10$ | 20$ |
+-------------+---------------+------+------+
| 2 | john | 55$ | 20$ |
+-------------+---------------+------+------+
我使用SQL Server 2005.
我非常感謝每一個答案。
誠懇 Andahari
這就是我們所說的擺動被table..you轉置表.. –
你的日期字段存儲爲哪種格式? –
不要存儲'$' - 並且絕對不要將其與數字值存儲在同一列中!!!!!!!!!!! – Strawberry