Sql 选择“查询重复值”

Sql 选择“查询重复值”,sql,sql-server,sql-server-2000,Sql,Sql Server,Sql Server 2000,使用SQLServer2000 我想检查列值是否相同 表1 ID Value 001 1000 002 1000 003 5000 从上表中可以看出,输出中没有显示任何内容,因为每个id的值都不同 如果所有id的值相同,则显示,否则不显示任何内容 如何进行选择查询 需要查询帮助请尝试: select max(Value) from Table1 having count(distinct Value) = 1 此代码将查看ID的重复值的数量,并返回: ID,重复的值,此值在表中存在的次数

使用SQLServer2000

我想检查列值是否相同

表1

ID Value

001 1000
002 1000
003 5000
从上表中可以看出,输出中没有显示任何内容,因为每个id的值都不同

如果所有id的值相同,则显示,否则不显示任何内容

如何进行选择查询

需要查询帮助

请尝试:

select max(Value)
from Table1
having count(distinct Value) = 1

此代码将查看
ID
的重复
值的数量,并返回:

ID
,重复的
,此值在表中存在的次数

SELECT Id, Value
   , COUNT(1) AS occurances
FROM Table1
GROUP BY ID, VALUE
HAVING COUNT(1) > 1

和什么一样?你想显示什么?@Gopal:请你澄清一下你想从这个查询中得到什么?对于这个问题,您目前有两个答案,它们做了完全不同的事情(基于它们对您的需求的解释)。我认为您缺少了一个
groupby
,并且您的答案是错误的(
>1
)@Hogan:不,您误解了查询的作用(尽管SQLServer可能需要一个
groupby()
); 如果整个数据集中
value
的所有值都相同,则返回整个数据集中的单个值。(这就是最初的问题所要求的;Tevo D的编辑使它看起来像是在要求其他东西。)@MarkBannister有点不清楚OP真正想要什么,这就是为什么我试图解释我的问题。我直到问题被编辑后才看,但我认为编辑是准确的。