Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL选择不分组的重复值_Sql Server - Fatal编程技术网

Sql server SQL选择不分组的重复值

Sql server SQL选择不分组的重复值,sql-server,Sql Server,我检查了所有相关的问题,但找不到确切的我需要的 我需要返回任何数据,其中每个记录的一个特定字段相同,但我不能使用groupby,因为我需要查看所有重复的记录,而不仅仅是对它们进行计数 我尝试过使用groupby和having count(field)>1和各种形式的简单select以及其他尝试使用count()的方法 基本上,我需要查看表中的所有内容,除了一个特定字段具有唯一值之外。如果它不是唯一的,我需要查看它 这里有额外的要求,但为了简单起见,这里不包括这些要求。我正在使用SSMS 2008

我检查了所有相关的问题,但找不到确切的我需要的

我需要返回任何数据,其中每个记录的一个特定字段相同,但我不能使用
groupby
,因为我需要查看所有重复的记录,而不仅仅是对它们进行计数

我尝试过使用
groupby
having count(field)>1
和各种形式的简单
select
以及其他尝试使用
count()
的方法

基本上,我需要查看表中的所有内容,除了一个特定字段具有唯一值之外。如果它不是唯一的,我需要查看它

这里有额外的
要求,但为了简单起见,这里不包括这些要求。我正在使用SSMS 2008 R2

谢谢

示例:

数据:

预期结果:

Col1  |  Col2  |  Col3
----------------------
abc      wow      13/05/2016
abc      wow      10/05/2016
ghi      wow      13/05/2016
ghi      wow      10/05/2016

我想展示任何在Col1中没有唯一值的东西,不太清楚你想做什么,但也许你正在寻找这样的东西

with MyDupes as
(
    Select MyColumnWithDupes
        , COUNT(*) as RowCount
    from SomeTable
    Group by MyColumnWithDupes
)

select *
from SomeTable st
join MyDupes md on md.MyColumnWithDupes = st.MyColumnWithDupes
where md.RowCount > 1

您可以使用以下查询:

SELECT Col1, Col2, Col3
FROM (
  SELECT Col1, Col2, Col3,
         COUNT(*) OVER (PARTITION BY Col1) AS cnt
  FROM mytable) AS t
WHERE t.cnt > 1

查询使用窗口版本的
COUNT
aggregate函数:该函数应用于
Col1
分区。外部查询筛选出只有一次出现的
Col1
值的记录。

一些具有预期结果的示例数据将有助于我们更好地理解问题。@GiorgosBetsos我试图将其保持为通用,以便对其他人更有用,但我将添加一些数据
SELECT Col1, Col2, Col3
FROM (
  SELECT Col1, Col2, Col3,
         COUNT(*) OVER (PARTITION BY Col1) AS cnt
  FROM mytable) AS t
WHERE t.cnt > 1