首页 > 解决方案 > 获取重复行但更严格

问题描述

我正在通过以下查询选择重复行:

SELECT name, day, COUNT(name)
FROM filters
WHERE BOX = '1' OR BOX = '2' AND day = '2021-07-23'
GROUP BY name,day HAVING COUNT(name)>1;

一切都很好,但我想让它更严格。如果这些查询结果确实存在于我的WHERE条件中,我想获取重复的行。

例如,如果此查询返回一个名为 ( X2 ) 的结果,这意味着X2.BOX等于 '1' 或 '2' 并且它的日期应该是 '2021-07-23';

在查询返回结果并且没有一个满足WHERE条件的那一刻,我想告诉查询不返回任何内容或返回 null 等...

标签: mysqlsql

解决方案


你能改变这个吗

WHERE BOX = '1' OR BOX = '2' AND day = '2021-07-23'

WHERE BOX in ('1','2') AND day = '2021-07-23'

不过,我可能会误解,如果您可以发布一些有用的示例输出与预期结果


推荐阅读