问题描述
如何得到以下问题的结果,给定这张表:
uid | id | start_time | end_time |
------------------------------------------------------
1 | 111 | 2021-04-21 10:00:00 | 2021-04-21 10:00:00 |
2 | 111 | 2021-04-21 10:00:00 | 2021-04-21 10:10:00 |
3 | 111 | 2021-04-21 10:00:00 | 2021-04-21 10:10:00 |
4 | 112 | 2021-04-21 10:00:00 | 2021-04-21 10:10:00 |
5 | 113 | 2022-02-11 08:00:00 | 2022-02-11 08:10:00 |
我需要找到那些具有不同 ID 和更大的结束日期作为开始日期的行。 在此表中,这将是 UID 为 2、3 和 4 的行,而第 4 行是最有趣的行。
不幸的是我的尝试不起作用:
SELECT uid,id,count(id) as NoID,start_time,end_time
FROM `table`
GROUP BY id,start_date
HAVING COUNT(disTINCT(id))>1 AND COUNT(start_time)>1 AND (end_time)>(start_time)
我没有找到一种如何告诉 MysqL 它应该返回 id 4 的方法,它只能在 is 2 和 3 的上下文中找到。
有人有想法吗?谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)