我正在尋求一些幫助來將以下兩個查詢的輸出加在一起。它們有兩個不相容的條件,因此我很難將它們合併到一個查詢中。
年初至今的總收入
如何合併兩個查詢的輸出?
SELECT
sum(datediff(returndate, dueDate)*(products.rentalfee*0.2)) AS 'Late Fees YTD'
FROM products INNER JOIN orderdetails
ON products.productID = orderdetails.productID
WHERE returndate > duedate
和
SELECT
sum(products.RentalFee*orderdetails.quantity)
AS 'Total Revenue YTD'
FROM products INNER JOIN orderdetails
ON products.productID = orderdetails.productID
WHERE returndate > duedate OR duedate = returndate
答案1
您可以嘗試在第三個查詢的 select 子句中使用這兩個查詢,其中您要選擇的表格是 DUAL。這允許將兩個查詢的結果一起傳回一行。
例子:
詢問:
選擇 (選擇 sum(datediff(退貨日期, dueDate)*(products.rentalfee*0.2)) FROM 產品 INNER JOIN orderdetails ON products.productID = orderdetails.productID WHERE returndate > duedate) AS 'YTD 滯納金' ,(選擇 sum(產品.RentalFee*訂單詳細資料.數量) FROM 產品 INNER JOIN orderdetails ON products.productID = orderdetails.productID WHERE returndate > duedate OR duedate = returndate) AS 'YTD 總收入'
來自雙;
結果:
+------------------------++--------------------+ |年初至今的滯納金 |年初至今總收入 | +------------------------++--------------------+ | 3 | 4 | +------------------------++--------------------+