gpt4 book ai didi

mysql - 使用 SQL 查询获取每天的第一次和最后一次时间

转载 作者:行者123 更新时间:2023-11-29 18:27:57 25 4
gpt4 key购买 nike

我的数据库中有此数据:

musterid | musterdate          |  userid  | status
---------+---------------------+----------+-------
69 | 2017-09-01 11:58:37 | 50 | 1
70 | 2017-09-01 12:00:07 | 50 | 1
71 | 2017-09-01 12:29:15 | 50 | 1
72 | 2017-09-01 12:31:15 | 50 | 1
73 | 2017-09-01 09:58:37 | 51 | 1
74 | 2017-09-01 11:00:07 | 51 | 1
75 | 2017-09-01 12:29:15 | 51 | 1
76 | 2017-09-01 07:31:15 | 51 | 1

我想要这样的输出:

musterid | musterdate          |  userid  | status
---------+---------------------+----------+-------
69 | 2017-09-01 11:58:37 | 50 | 1
72 | 2017-09-01 12:31:15 | 50 | 1
73 | 2017-09-01 09:58:37 | 51 | 1
76 | 2017-09-01 07:31:15 | 51 | 1

即我想获取每个用户的第一次和最后一次进入时间。

如何实现这一目标?

我不知道如何创建一个表来表示数据,所以对我的演示感到抱歉。

最佳答案

获取“每个用户的首次和最后进入时间”的复杂查询:

SELECT 
t1.*
FROM
yourtable t1
LEFT JOIN
(SELECT
MIN(musterdate) AS min_mdate,
MAX(musterdate) AS max_mdate,
userid
FROM
yourtable
GROUP BY userid) t2 ON t1.userid = t2.userid
WHERE
t1.userid = t2.userid
AND t1.musterdate IN (t2.min_mdate , t2.max_mdate)
ORDER BY userid , musterdate;

关于mysql - 使用 SQL 查询获取每天的第一次和最后一次时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45995565/

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