sql - SQL 有两列
问题描述
我有下表A
COL1 COL2 COL3
A 1 10-1-2019
B 4 13-4-2019
A 1 13-4-2019
A 1 10-1-2019
A 1 10-1-2019
C 3 20-4-2020
A 1 13-4-2019
我这是我想写的 sql 代码,但计数不接受两个元素:
select COL1,COL2,COL3
from TableA
group by COL1,COL2,COL3,
HAVING COUNT(COL1,COL2) > 2
并且只有结果A 1 10-1-2019
应该出现,因为它是唯一一个具有超过 2 个结果的对 COL1 COL3 (在本例中为 3 次)。COL1 /COL3 对类似于组合主键
我如何实现这一点?
我的数据库是 Sybase ASE
提前致谢。
解决方案
我认为这可以满足您的要求:
select COL1, COL2, COL3
from TableA
group by COL1, COL2, COL3,
HAVING COUNT(*) > 2;
也许你有一个不好的例子。但我不明白你为什么认为你需要 exclude col2
。
推荐阅读
- html - HTML 发布请求的结构与 Django HTML 发布请求的结构
- python - 在 Spyder 中禁用 Pylint
- c++ - 特定方法和一般类中的“使用类型”语法有什么区别?
- java - 如何避免组件阴影在 JFrame 中相互重叠?
- javascript - 没有结果时不显示结果组件
- e2e-testing - 是否可以获取摘录的对象属性以在之后的条件下使用它们?
- python - 权限被拒绝:升级 matplotlib 时出现 INSTALLER.c 错误
- chainlink - Chainlink 节点错误:用户“root”的密码认证失败
- html - vs代码中的CSS问题
- vue.js - 为什么这个列表渲染在 Vue 3 中不起作用?