过滤掉在表格中出现多次的条目

时间:2017-06-02 13:42:30

标签: database sybase sybase-ase

我有一个包含以下数据的表:

Table t1

A     |   B
12        56
12        56
10        8
10        9
10        11
9         55
9         66

我需要编写一个程序来查找列A具有相同值的所有列值,但列B中的值不同。

示例

我的结果如下:

A    |    B
10        8
10        9
10        11
9         55
9         66

A是相同的,B对于A的每个值都不同。

2 个答案:

答案 0 :(得分:0)

select distinct leftside.*
from t1 leftside 
inner join t1 rightside
where leftside.A = rightside.A
and leftside.B != rightside.B
order by A, B

http://sqlfiddle.com/#!9/578f2f/5

答案 1 :(得分:0)

请尝试以下查询:

SELECT 
    A
    , B 
FROM
(
    SELECT
        A,
        B,
        COUNT(*) AS Total
    FROM 
        t1
    GROUP BY
        A,
        B
) AS Results
WHERE
    Results.Total = 1

此查询将隐藏表t1中多次出现的任何条目。