組合表以實現合併輸出
使用多個資料表時,將它們組合起來產生一個統一的輸出是很常見的任務。為了實現這一點,理解資料結構和查詢操作變得至關重要。
想像有兩個表:KnownHours 和 UnknownHours。目標是合併這些表,忽略「月份」列,以獲得與各種費用編號和類別 ID 相關的小時的全面視圖。
為了實現此目的,UNION 運算子是一個強大的工具。它允許我們組合多個查詢的結果,本質上是將它們附加在一起。 SQL 中 UNION 的語法如下:
SELECT ... FROM table1 UNION SELECT ... FROM table2
在我們的例子中,我們需要將每個 ChargeNum/Category 組合的小時數進行分組。我們可以如下修改 UNION 查詢:
SELECT ChargeNum, CategoryID, SUM(Hours) FROM KnownHours GROUP BY ChargeNum, CategoryID UNION ALL SELECT ChargeNum, 'Unknown' AS CategoryID, SUM(Hours) FROM UnknownHours GROUP BY ChargeNum
UNION ALL 關鍵字與 UNION 略有不同,因為它不會嘗試刪除重複的行。這確保了兩個查詢的所有行都包含在最終結果中。
透過利用UNION ALL 操作,我們可以有效地組合KnownHours 和UnknownHours 的結果,建立一個具有所需輸出的綜合表:
ChargeNum CategoryID Hours 111111 1 90 111111 2 50 111111 Unknown 110.5 222222 1 40 222222 Unknown 25.5
了解UNION 運算符可讓您合併來自多個來源的數據,為您的數據分析建立量身定制的全面輸出提供強大的手段需求。
以上是如何使用 SQL 的 UNION 運算符合併多個表中的資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!