0

我有一张像

Name     Spouse
---------------

John     Smitha

Bob      Neetha

Neetha   Bob

Mona     Jack

Smitha   John

Jack     Mona

我希望使用 MySQL 中的连接得到如下结果。

Name     Spouse
---------------

John     Smitha

Bob      Neetha

Mona     Jack

(即这对夫妇只能选择一次)

4

2 回答 2

0

一种这样做的方法

    SELECT `Name`, `Spouse`
    FROM Table1
    WHERE `Name` <= `Spouse`

演示

于 2013-09-27T18:45:13.980 回答
0

假设您有一个 IsPrimary 字段。

您可以使用以下查询轻松实现此目的。

SELECT P.NAME, S.NAME As SpouseName
FROM PEOPLE P
LEFT JOIN PEOPLE S ON P.Spouse = S.Spouse -- You should have a PK/FK relasionship here (SouseId) and not join on a name string
WHERE P.IsPrimary = 1
于 2013-09-27T18:26:27.577 回答