如何获得每个日期的最小(时间)和最大(时间)

dm7nw8vv  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(345)

嗨,我是新来phpmyadmin使用xampp没有背景的mysql。当我很喜欢研究它是如何工作的时候,我突然想到一个想法,这让我一个星期都睡不着觉了,因为我似乎不知道如何在“一列”中使用每个日期的最小(时间)和最大(时间)来获取报告。

UserID  Name       Date        Time 
103     Pikachu     7/1/2018    11:01:16 PM
103     Pikachu     7/1/2018    11:01:20 PM 
103     Pikachu     7/1/2018    11:02:01 PM
204     Bulbasaur   7/1/2018    11:15:35 PM
103     Pikachu     7/1/2018    9:02:16  AM
103     Pikachu     7/1/2018    9:02:16  AM
204     Bulbasaur   7/1/2018    9:25:35  AM
204     Bulbasaur   7/2/2018    12:05:15 AM
204     Pikachu     7/2/2018    12:09:35 AM

预期产量:

UserID  Name       Date        Time
103     Pikachu     7/1/2018    11:01:16 PM
103     Pikachu     7/1/2018    9:02:16  AM
204     Bulbasaur   7/1/2018    11:15:35 PM
204     Bulbasaur   7/1/2018    9:25:55  AM
204     Bulbasaur   7/2/2018    12:05:12 AM
204     Bulbasaur   7/2/2018    NULL
103     Pikachu     7/2/2018    12:09:35 AM
103     Pikachu     7/2/2018    NULL

请,任何帮助都将不胜感激

mpgws1up

mpgws1up1#

同意@mureinik使用groupby,但我认为用户id和name也需要包含在groupby中,并使用union all来组合这两个结果

select distinct UserID,Name, date,Time from
 (
    SELECT  UserID,Name, date, MIN(time) as Time
    FROM     mytable
    GROUP BY date,UserID,Name
    union all

    SELECT  UserID,Name, date, MAX(time) as Time
    FROM     mytable
    GROUP BY date,UserID,Name
) as T

相关问题