SQL 检查唯一的列组合条目

标签 sql sql-server

我有下表“Pcategory”,包含以下 4 列,PCategoryID 是我的主键,

Pcategory Table         
PCategoryID(PK) |TermID (FK)|SubCategoryID (FK)|CategoryID(FK)

PK -> 主键 FK -> 外键

请告诉我如何编写 SQL 查询来检查表是否具有唯一的外来键组合 TermID (FK)|SubCategoryID (FK)|类别ID (FK)。

(即)我需要一个包含这 3 个外键组合的表中的重复记录列表(如果有的话)

最佳答案

希望以下是您正在寻找的内容:

select termid,subcategoryid,categoryid,count(1)
from pcategory
group by termid,subcategoryid,categoryid 
having count(1) > 1 

关于SQL 检查唯一的列组合条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45474971/

相关文章:

mysql - NodeJS + MySQL,在插入时无法从应用程序访问数据库,但可以从终端访问

c# - 如何用字符串中的双撇号替换撇号?

c# - 将特定值放入数据库中的特定表格单元格中。 ( Razor - html)

sql - 如何检查哪个值导致SQL错误: ORA-01722: invalid number

sql - 如何根据[ParentId]从同一个表中选择[ParentName]

sql-server - ssis中如何将空白转换为null

SQL Server - 类似/模式匹配

mysql - 错误代码 : 1093. 您不能在 FROM 子句中指定要更新的目标表

c# - 查找电话号码 - 查找带和不带电话分机的号码

SQL Server 安装/配置错误