gpt4 book ai didi

mysql - 根据不同行中的值从同一列中选择值(如 INDEX/MATCH?)

转载 作者:行者123 更新时间:2023-11-30 22:17:16 27 4
gpt4 key购买 nike

我有下表:

ID          Status  Datestamp

241112069 Stop 6/15/2016 16:46
241112069 Start 6/15/2016 16:28
241108880 Stop 6/15/2016 15:42
241105741 Finish 6/15/2016 17:58
241105741 Start 6/15/2016 15:24
241105741 Stop 6/15/2016 15:24
241105111 Stop 6/15/2016 15:31
241105111 Stop 6/15/2016 15:31
241105111 Start 6/15/2016 15:31
241105110 Stop 6/15/2016 15:31
241105110 Start 6/15/2016 15:31
241105110 Stop 6/15/2016 15:31
241105109 Stop 6/15/2016 15:31
241105109 Stop 6/15/2016 15:31
241103498 Stop 6/15/2016 15:12
241103498 Start 6/15/2016 15:12
241102948 Stop 6/15/2016 15:10
241102380 Stop 6/15/2016 15:07
241101836 Stop 6/15/2016 15:03
241101836 Start 6/15/2016 15:03
241101835 Stop 6/15/2016 15:03
241101835 Start 6/15/2016 15:03
241101537 Finish 6/15/2016 17:55
241101537 Stop 6/15/2016 15:02
241101537 Start 6/15/2016 15:02
241097936 Stop 6/15/2016 14:54
241097936 Finish 6/15/2016 15:16
241097936 Start 6/15/2016 14:44

我正在尝试编写一个选择查询,它基本上会返回不同的 ID,然后是三个包含每个状态(开始、停止、完成)的日期戳的新列。绞尽脑汁思考案例、子查询等,但没有得到我想要的结果。我会在 Excel 中使用 INDEX/MATCH,但这个数据库非常庞大。

警告:

  1. 同一状态/订单或空白值可以有多个状态条目。对于多个条目,我只想要第一个。

感谢任何帮助。

最佳答案

可能是一些内连接

select a.id, min(a.datestamp) as start, min(b.datestamp) as stop, min( c.datestamp ) as finish
from my_table as a
inner join my_table as b on a.id = b.id and b.status = 'stop'
inner join my_table as c on a.id = c.id and c.status = 'Finish'
where a.status = 'Start';
group by a.id

关于mysql - 根据不同行中的值从同一列中选择值(如 INDEX/MATCH?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37867408/

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