我在桌面上使用MySQL 8.0CE和MySQL Server 5.0。
当我使用group by结果无法保留重复记录时,我需要参考。
我该如何处理?
例如,我在表Scheduler中有几个日期:
sDate:
10/1/2018
10/1/2018
10/2/2018
10/2/2018
10/3/2018
10/3/2018
当我执行以下语句时:
SELECT S.sDate
FROM Scheduler S
GROUP BY S.sDate
HAVING COUNT(*)>1
我应该在表sDate中得到完全相同的结果。但是,我得到这个:
10/1/2018
10/2/2018
10/3/2018
消除重复的地方,我不知道该怎么办。
最佳答案
实际上,您使用以下查询:
select S.sDate from Scheduler S group by S.sDate having COUNT(*)>1
此查询指出,您需要在表Scheduler中显示所有计数大于1的sDate,并且在表数据中所有三个日期都有重复的条目。
如果要在查询结果中保留重复项,请使用以下查询:
select S.sDate from Scheduler S group by S.sDate having COUNT(*)>= 1
希望它清除您的疑问!
关于mysql - 分组依据无法保留重复项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52705727/