唯一的记录,我有以下提到的表(ID和禄是主键)取重复的记录,以及在SSIS
ID LOC RNK NBR1 NBR2 1 2 A 10 b ---> 3 4 A 10 b ---> 5 6 A 11 C 8 2 A 12 D 6 3 A 10 b --->
所以在这里我要取只能按NBR1和NBR2,它不应该重复记录获取所有记录不仅是重复项(标记为--->)。
唯一的记录,我有以下提到的表(ID和禄是主键)取重复的记录,以及在SSIS
ID LOC RNK NBR1 NBR2 1 2 A 10 b ---> 3 4 A 10 b ---> 5 6 A 11 C 8 2 A 12 D 6 3 A 10 b --->
所以在这里我要取只能按NBR1和NBR2,它不应该重复记录获取所有记录不仅是重复项(标记为--->)。
如果我理解正确你的问题,你可以使用子查询
CREATE TABLE #Test (ID int, LOC int, RNK char(1), NBR1 int, NBR2 char(1))
INSERT INTO #Test VALUES
(1, 2, 'A', 10, 'b'),
(3, 4, 'A', 10, 'b'),
(5, 6, 'A', 11, 'C'),
(8, 2, 'A', 12, 'D'),
(6, 3, 'A', 10, 'b')
SELECT *
FROM #Test t1
WHERE EXISTS
(SELECT 1
FROM #Test t2
WHERE t1.NBR1 = t2.NBR1
AND t1.NBR2 = t2.NBR2
GROUP BY NBR1, NBR2
HAVING COUNT(1) > 1)
这里我想要所有的记录..如果我使用计数,并从这个例子中得到输出,如ID LOC RNK NBR1 NBR2 1 2 A 10 b ---> 1 3 4 A 10 b ---> 2 5 6 A 11 C - > 1 8 2 A 12 D - > 1 6 3 A 10 b ---> 3所以我想重复记录,我标记为1,2,3和独特的踢那些。 – 343 2013-03-14 20:38:35
所以我想重复记录,我标记为1,2,3和独特的踢。 – 343 2013-03-14 20:39:52
让我试试...但它的过滤计数> 1,但我想要从1,2,3的所有重复计数... – 343 2013-03-14 20:42:12
你也可以用这个做,但成本会更多。具有大于1的值的RowsCount是重复的并且具有值1是唯一记录。
With Temp As
(
Select ID,LOC,RNK,NBR1,NBR2,Row_NUMBER() OVER (PARTITION BY NBR2 ORDER BY NBR1) AS ROWSCOUNT FROM <<TABLE_NAME>>
)
Select * from Temp
你想要所有记录还是只有重复?我不明白.. – JodyT 2013-03-14 20:26:20
[你有什么尝试](http://www.whathaveyoutried.com)? – Kermit 2013-03-14 20:26:34
我只想要ID号1,3,6。 – 343 2013-03-14 20:27:32