gpt4 book ai didi

sql - MySQL合并多行

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

我有一个类似于下面的表(当然有更多的行和字段):

category_id | client_id | date        | step
1 1 2009-12-15 first_step
1 1 2010-02-03 last_step

1 2 2009-04-05 first_step
1 2 2009-08-07 last_step

2 3 2009-11-22 first_step

3 4 2009-11-14 first_step
3 4 2010-05-09 last_step

我想对此进行转换,以便我可以计算第一步和最后一步之间的时间,并最终找到第一步和最后一步之间的平均时间等。基本上,我对如何将上表转换为像这样的东西:

category_id | first_date | last_date
1 2009-12-15 2010-02-03
1 2009-04-05 2009-08-07
2 2009-11-22 NULL
3 2009-11-14 2010-05-09

如有任何帮助,我们将不胜感激。

最佳答案

根据问题更新/澄清更新:

  SELECT t.category_id,
MIN(t.date) AS first_date,
CASE
WHEN MAX(t.date) = MIN(t.date) THEN NULL
ELSE MAX(t.date)
END AS last_date
FROM TABLE t
GROUP BY t.category_id, t.client_id

关于sql - MySQL合并多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3345252/

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