mysql - 计入 SELECT DISTINCT 查询?

标签 mysql sql oracle

所以我有这个查询:

SELECT DISTINCT s.CITY, s.STATE, SUBSTR(s.ZIP,1,5) FROM table s
WHERE CITY IN (...)
AND STATE IN (...)

我如何添加到此以仅获取 count(s.ID) > 20,以便我仅获取表中具有超过 20 个 ID 的不同城市/州/邮政编码?

我假设我需要某种子查询,但我不确定如何完成它。谢谢。

最佳答案

按您要选择的值分组,并只取那些记录超过 20 条的组

SELECT s.CITY, s.STATE, SUBSTR(s.ZIP,1,5) 
FROM table s
WHERE CITY IN (...)
AND STATE IN (...)
GROUP BY s.CITY, s.STATE, SUBSTR(s.ZIP,1,5) 
HAVING count(*) > 20

关于mysql - 计入 SELECT DISTINCT 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57512573/

相关文章:

sql - 不等于和大于数字之间的区别

sql - SQL查询-在12小时内选择重复项

sql - 显示每个 zip 中最高的 num_add 及其在 postgresql 中关联的 hrs 分数

oracle - 替换oracle中的无效字符(通过编辑dmp文件)

php - 使用 MySQL 表数据填充 HTML 表

mysql - 返回的记录集已关闭(通过 VBA 中的 ODBC 访问 mysql DB)

mysql - MySQL 查询中的子字符串

javascript - 为什么我在更新 mysql 的 where 子句中出现错误

java - 为什么我收到此错误 : java. sql.SQLException : Prepared statement needs to be re-prepared?

Oracle 多插入语句