0

mysql クエリで次の問題が発生しています。

与えられた 2 つのテーブル


ID | 名前

1 | ジョン・ドウ

2 | ジェーン・ドウ

3 | 冥王星


切符売場

ID | 所有者 | オープナー | に割り当てられた

1 | 1 | 2 | 3

2 | 3 | 1 | 2

Owner、Opener、AssignedTo は People Id にリンクする外部キーです


Owner、Opener、AssignedTo 列をユーザー名に置き換えるクエリを作成する必要があります。

1列だけでは問題ありませんが(左結合を使用するだけで十分です)、次の出力を受け取ることができません

... から * を選択します。

1 | ジョン・ドウ | ジェーン ドウ | 冥王星

2 | 冥王星 | ジョン・ドウ | ジェーン・ドウ

前もって感謝します。

4

2 に答える 2

3

何回でも参加できPersonます。

SELECT t1.Id, t2.Name AS owner, t3.Name AS opener, t4.Name AS assignedTo
FROM Tickets t1
LEFT JOIN Person t2 ON t1.Owner = t2.Id
LEFT JOIN Person t3 ON t1.Opener = t3.Id
LEFT JOIN Person t4 ON t1.AssignedTo= t4.Id
于 2012-07-09T14:00:54.493 に答える
0

チケットを選択します。Id、POwner.Name AS Owner、POpener.Name AS Opener、PAssignedTo.Name AS AssignedTo FROM Tickets POwnerPersonとして参加 ON Owner= POwner.Id POpenerとして参加PersonON = POpener.Id PAssignedTo として参加 ON = PAssignedTo.IdOpenerPersonAssignedTo

于 2012-07-09T14:13:27.493 に答える