MySql选择两列之间的唯一值行

时间:2014-10-31 19:15:37

标签: mysql

我似乎无法让它发挥作用。

我有这张桌子:

A  B
- - -
1  2
1  3
1  4
4  1
3  1
2  1

我只想要前三行,

A  B
- - -
1  2
1  3
1  4

因为最后3行仅与前三行相反。

如何使用MySQL查询执行此操作?

请帮忙!

1 个答案:

答案 0 :(得分:2)

SQL Fiddle

鉴于此架构,

CREATE TABLE t
    (`A` int, `B` int)
;

INSERT INTO t
    (`A`, `B`)
VALUES
    (1, 2),
    (1, 3),
    (1, 4),
    (4, 1),
    (3, 1),
    (2, 1)
;

您可以使用此查询来获取a,b数据,减少它,并消除重复项。

SELECT DISTINCT LEAST(A,B) AS A,
                GREATEST(A,B) AS B
  FROM t

<强> Results

| A | B |
|---|---|
| 1 | 2 |
| 1 | 3 |
| 1 | 4 |