在 MSSQL 分組查詢中進行條件求和
在 SQL Server 的 OrderDetails 表中,每個訂單項目都有一個獨特的 OrderId,以及相關的成本 (CopyCost、FullPrice) 和價格類型 (PriceType)。目標是建立一個包含三列的總表:OrderId、ItemCount、TotalCopyCost 和TotalFullPrice,其中ItemCount 是每個訂單的項目數量,TotalCopyCost 是每個訂單的CopyCost 值總和,TotalFullPrice 是每個訂單的FullPrice 值之和。
為此,可以使用帶有條件求和的分組查詢:
<code class="language-sql">SELECT OrderId, COUNT(*) AS ItemCount, SUM(CASE WHEN PriceType = 'CopyCost' THEN Price ELSE 0 END) AS TotalCopyCost, SUM(CASE WHEN PriceType = 'FullPrice' THEN Price ELSE 0 END) AS TotalFullPrice FROM OrderDetails GROUP BY OrderId</code>
在此查詢中:
透過使用條件求和,查詢有效地計算每個訂單的總成本和全價,並按 OrderId 將結果分組。產生的總計表提供了原始資料的綜合視圖,使分析訂單相關費用更容易。
以上是如何在 MSSQL 中透過查詢計算分組內的條件總和?的詳細內容。更多資訊請關注PHP中文網其他相關文章!