將多個查詢結果組合成單一結果集
將多個SQL 查詢的結果組合成單一結果集是處理下列問題時的常見任務複雜的查詢或大型資料集。本文示範如何將兩個查詢的結果合併到單獨的欄位中。
原始查詢
考慮以下兩個回傳單獨結果集的查詢:
查詢1:
SELECT SUM(Fdays) AS fDaysSum FROM tblFieldDays WHERE tblFieldDays.NameCode=35 AND tblFieldDays.WeekEnding=?
查詢2:
SELECT SUM(CHdays) AS hrsSum FROM tblChargeHours WHERE tblChargeHours.NameCode=35 AND tblChargeHours.WeekEnding=?
組合結果
要將這兩個查詢的結果組合成一個結果集,可以使用以下方法:
為兩個查詢指定別名
為第一個查詢指定別名“x”,第二個查詢為“y”,使用“AS”關鍵字。
SELECT x.a, y.b FROM (SELECT * FROM a) AS x, (SELECT * FROM b) AS y
在此範例中,「x」表示查詢1 的結果,「y」表示查詢1 的結果查詢2.
從別名中選擇列
從每個別名中選擇您想要的列別名。在本例中,我們需要「x」中的「fDaysSum」欄位和「y」中的「hrsSum」欄位。
SELECT x.fDaysSum, y.hrsSum FROM (SELECT * FROM a) AS x, (SELECT * FROM b) AS y
執行此組合查詢,您將獲得一個結果集,其中包含查詢 1 和查詢 2 的結果作為單獨的列。
以上是如何將兩個 SQL 查詢的結果合併到具有單獨列的單一結果集中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!