gpt4 book ai didi

mysql - 复杂的 MySQL 连接语句

转载 作者:行者123 更新时间:2023-11-30 22:23:28 25 4
gpt4 key购买 nike

我知道这里有很多 MySQL 帖子,每个帖子都是特定于发帖人使用的。我的加入情况相当复杂。

我有 3 个表,并试图在两列上聚合数据。我在 ProductID 和 ProductionMonth 上分组。

我快完成了,但现在我对数据集的日期列分组有一个症结。

我的数据输出目前没有填写特定月份的数据。我需要它至少显示零和日期。

现在输出是这样的:

<pre>
Products TOTAL CANCELLED Product Name ProductType ProductionMonth
2 32 5 Advantage VSC Auto 2016-02-02
2 26 3 Advantage VSC Auto 2016-01-01
2 31 2 Advantage VSC Auto 2015-12-01
16 5 1 ASC VSC Auto 2016-02-01
16 4 4 ASC VSC Auto 2016-01-01
17 0 0 MenuVantage Menu Software NULL
21 12 0 CSO Credit 2016-02-01
21 24 0 CSO Credit 2016-01-01
</pre>

但即使没有与该记录关联的日期,我也需要数据包含日期。这是我当前的代码:

<pre>
SELECT P.Products, Inv.TOTAL,Inv.CANCELLED, Pur.ProductName AS 'Product Name',ProductType,ProductionMonth
FROM Dealership_Products P
LEFT JOIN (SELECT ProductsID, SUM(Total) AS TOTAL, SUM(Cancelled) AS CANCELLED,ProductionMonth
FROM Monthly_Production_Numbers
WHERE DealershipID = '25'
AND
ProductionMonth > DATE_SUB(CURDATE(), INTERVAL 1 MONTH) - INTERVAL 3 MONTH
GROUP BY ProductionMonth,ProductsID) AS Inv
ON P.Products = Inv.ProductsID
LEFT JOIN (SELECT ProductsID, ProductName AS ProductName, ProductType
FROM Products
GROUP BY ProductsID) AS Pur
ON P.Products = Pur.ProductsID
WHERE DealershipID = '25'
AND
Inactive = 'FALSE'
ORDER BY Products ASC, ProductionMonth DESC
</pre>

正在使用的表:

Dealership_Products
column (Products) ->
Products.ProductsID

每月_生产_数字 按(ProductionMonth)“过去 3 个月”分组 按(产品 ID)分组

产品

由于数据和表格非常复杂,我无法共享所有结构。但主要部分都在这里。

感谢您的帮助!

最佳答案

使用 IFNULL 怎么样?

IFNULL(ProductionMonth,'date-you-want') as ProductionMonth

关于mysql - 复杂的 MySQL 连接语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36029207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com