當兩個查詢的條件不相容時,如何合併 MYSQL 中的兩個查詢的輸出

當兩個查詢的條件不相容時,如何合併 MYSQL 中的兩個查詢的輸出

我正在尋求一些幫助來將以下兩個查詢的輸出加在一起。它們有兩個不相容的條件,因此我很難將它們合併到一個查詢中。

年初至今的總收入

如何合併兩個查詢的輸出?

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 |
+------------------------++--------------------+

相關內容