sql - 使用 sql (oracle) 识别列中的重复项
问题描述
我有以下数据集:
FLD_NB|RGN_CD
1 |NC
2 |SC
1 |MA
3 |GA
3 |MA
我正在尝试识别在 1 以上可用的所有记录RGN_CD
,因此例如上面的场景在两者中FLD_NB=1
都可用RGN_CD='NC'
RGN_CD='MA'
FLD_NB
识别具有 cross多个实例的行的最佳方法可能是什么RGN_CD
?
解决方案
您可以使用group by
和having
:
select fld_nb
from mytable
group by fld_nb
having count(*) > 1
这为您提供fld_nb
了不止一次出现的所有 s。或者,如果您希望fld_nb
s 具有多个distinct rgn_cd
,您可以将 having 子句更改为:
having count(distinct rgn_cd) > 1
推荐阅读
- facebook - 使用 Graph API 将视频上传到 Facebook 页面 - RestFB
- rust - 奇怪的错误:不能在返回 `()` 的函数中使用 `?` 运算符
- c# - 从没有存储过程的 SQL Server 表生成 C# 类
- javascript - JavaScript 处理异步回调节点 .js
- angular - Angular 2 FormBuilder Group多个验证器
- javascript - 在 Highcharts 上显示单个图表
- java - Java EE:EntityManager 是否在 DB 中获取方法更改状态
- powershell - 从 PowerShell 中提取事件创建时间 - Server 2003
- node.js - CentOS 上的 Angular 和 node.js nginx 部署
- python - 从数字列表中获取所有可能的产品