0
我很難嘗試組合我正在使用的一組查詢。我目前需要執行多個不同年份和CID號碼的查詢。 (CID是1-5歲是CurrentYear到CurrentYear-6)MySQL自定義計算視圖
當前的SQL語句:
SELECT
1 as CID,
2015 as `Year`,
( SELECT SUM(legacy_reports_payments.AmountPaid) * -1 AS Payments FROM legacy_reports_payments
WHERE DatePaid >= "2015-01-01 00:00:00" AND DatePaid < "2015-02-01 00:00:00"
AND CID = 1) As PaymentsJan,
( SELECT SUM(legacy_reports_payments.AmountPaid) * -1 AS Payments FROM legacy_reports_payments
WHERE DatePaid >= "2015-02-01 00:00:00" AND DatePaid < "2015-03-01 00:00:00"
AND CID = 1) As PaymentsFeb,
( SELECT SUM(legacy_reports_payments.AmountPaid) * -1 AS Payments FROM legacy_reports_payments
WHERE DatePaid >= "2015-03-01 00:00:00" AND DatePaid < "2015-04-01 00:00:00"
AND CID= 1) As PaymentsMar,
...
這將返回:
CID | Year | PaymentsJan | PaymentsFeb | ...
1 | 2015 | 3000.00 | 3000.00 | ...
我想創建一個能顯示一個單一視圖所有計算的信息,而不是像上面那樣運行幾個查詢。 我想有觀點看上去就像這樣:
CID | Year | PaymentsJan | PaymentsFeb | ...
1 | 2015 | 3000.00 | 3000.00 | ...
2 | 2015 | 2000.00 | 2000.00 | ...
3 | 2015 | 5000.00 | 5000.00 | ...
1 | 2014 | 1000.00 | 3000.00 | ...
2 | 2014 | 3000.00 | 4000.00 | ...
3 | 2014 | 2000.00 | 5000.00 | ...
任何人都可以提供處理的最佳方式是任何見解?
感謝您的回覆。我不完全確定如何運行您的查詢,因爲我是使用存儲過程的新手。當我嘗試它時,它在DECLARE語句中給我一個錯誤。有任何想法嗎? – Justin
(更新)。我得到它的工作。感謝您的建議。我最終用你的想法使用了一個存儲函數。 – Justin