gpt4 book ai didi

mysql - 选择第一个有效值并将其作为新列附加到 GroupBy

转载 作者:行者123 更新时间:2023-11-29 06:45:49 24 4
gpt4 key购买 nike

我有许多行具有相同的数据,但一两列不同。

我想通过将公共(public)数据合并在一起来减少行数,然后将不同的数据拉入新列。此外,有些行将缺少公共(public)数据,但只要其中一行具有 Order_ID(和类型)值,它就可以采用该值。

下面可以看得更清楚


原始数据(职位):

Order_ID Type CreatedTime
5 Collect 1000000000
5 Deliver
5 Deliver 1100000000
8 Collect 2000000000
8 Collect 2000000000
8 Deliver 2300000000

期望:

Order_ID CollectCreatedTime DeliverCreatedTime
5 1000000000 1100000000
8 2000000000 2300000000

我拥有的是这样的:

SELECT Order_ID, SOMETHING() As CollectCreatedTime, SOMETHING() As DeliverCreatedTime
FROM `Jobs` GROUP BY `Order_ID`

但是我无法弄清楚如何“选择存在的第一个值(如果不存在值则选择无值)并将其附加到 GROUP BY 选择。”

请告知我是否需要存在该问题以更好地解释它。

最佳答案

似乎您想要条件聚合:

SELECT Order_ID,
min(case when Type = 'Collect' then CreatedTime end) as CollectCreatedTime,
min(case when Type = 'Deliver' then CreatedTime end) as DeliverCreatedTime
FROM `Jobs`
GROUP BY `Order_ID`

关于mysql - 选择第一个有效值并将其作为新列附加到 GroupBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49515371/

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