2013-09-23 73 views
0

我有3列的表如下SQL SERVER找出非重複數據

id a b 
================= 
1 1 2 
2 1 3 
3 1 4 
4 2 4 
5 2 5 
6 3 4 
7 3 5 

我想告訴結果

如果列或b柱被複制,

我有嘗試使用(a,b)組,但結果不是我想要的。

我想組由(a)和示出了分組的第一行的A,B和B不重複

在我的例子中,A將分組爲{1,2,3},

和B將顯示{2,4,5}不是{2,4,4},因爲4,4是重複的

id a b 
================= 
1 1 2 

4 2 4 

7 3 5 

我該怎麼辦?

對不起,我不擅長英語。

Thx尋求幫助。

+0

複製?那是什麼? – Mihai

+0

根據描述我會說要使用DISTINCT或GROUP BY,但是我沒有看到關於您的數據與您的基礎數據關係的規則。 –

+0

重複,對不起我的英文 – ZHE

回答

0

此代碼從您的示例數據到您的示例結果。看起來很奇怪,但我懷疑這是你要找的。如果你提供更多的細節,那麼你可以得到更好的答案。

CREATE TABLE Example 
(
    id INT NOT NULL, 
    a INT NOT NULL, 
    b INT NOT NULL 
) 
GO 

INSERT Example 
VALUES 
    (1, 1, 2) 
    , (2, 1, 3) 
    , (3, 1, 4) 
    , (4, 2, 3) 
    , (5, 2, 4) 
    , (6, 3, 4) 

SELECT 
    MIN(id) AS id 
    , a 
    , MIN(b) AS b 
FROM 
    Example 
GROUP BY 
    a 

DROP TABLE Example