我做這樣的查詢:在數據庫表如何篩選分組查詢結果集(SQL)
SELECT Code, kind, SUM(valP) AS value FROM transaction WHERE tp = 'N' and date = '20110312' GROUP BY Code,kind ORDER BY Code,kind;
,讓我這個結果集:
+------+------+------+
| Code | kind| value|
+------+------+------+
| 1 | TR | 25,99|
| 1 | CT | 22,17|
| 2 | TR | 14,23|
| 3 | DD | 09,67|
| 3 | DD | 23,87|
| 3 | CT | 34,87|
+------+------+------+
代碼代表交易代碼,種類代表付款類型,價值代表付款的價值。
我想在結果集中包含僅包含類型='CT'的分組結果,但我想在同一個事務中包含其他支付類型,例如我嘗試添加一個有到上查詢:
SELECT Code, kind, SUM(valP) AS value FROM transaction WHERE tp = 'N' and date = '20110312' GROUP BY Code,kind HAVING kind = 'CT' ORDER BY Code,kind;
,但我得到這樣的:
+------+------+------+
| Code | kind| value|
+------+------+------+
| 1 | CT | 22,17|
| 3 | CT | 34,87|
+------+------+------+
,而不是我想要檢索是這樣的:
+------+------+------+
| Code | kind| value|
+------+------+------+
| 1 | TR | 25,99|
| 1 | CT | 22,17|
| 3 | DD | 09,67|
| 3 | DD | 23,87|
| 3 | CT | 34,87|
+------+------+------+
CT類型的記錄中的所有事務處理線有沒有辦法獲取?
我該怎麼辦?
我實際上在SQL Server 2005上工作,但我可能需要在PostgreSQL中運行一個類似的查詢。
感謝