【发布时间】:2020-04-19 13:11:29
【问题描述】:
在执行一个包含许多连接的长 SQL 查询后,我得到一个类似于以下的结果集:
A B C D E
foo bar baz cat 123
dog lorem ipsum dolor 123
bar baz foo dog 456
cat amet bar baz 789
我想从结果集中删除列值 E 的出现次数小于 2 的行。实际上,它会使最终结果如下所示:
A B C D E
foo bar baz cat 123
dog lorem ipsum dolor 123
我尝试了子查询、GROUP BY 子句、WHERE 表达式和 COUNT() 表达式的变体,但无法转换数据以获得我想要的结果。
我的 SQL 不是最好的。由于各种原因,最好用 SQL 解决这个问题,而不是用 Java 操作结果集。
这样的事情在 SQL 中可能吗?
性能还不是主要问题,因为原始结果集往往很小。
使用 MariaDB 数据库。
【问题讨论】:
-
PRIMARY KEY是什么?请提供SHOW CREATE TABLE。