1

私は3つのテーブルを持っています:

users:
--------------------
id | name | 
 1 | john |
 2 | bob  |

events
--------------------
id |  name   | location
 1 | concert | moon
 2 | sport   | ukraine

user_events
--------------------
id |  userid | eventid
 1 |   1     |   1 
 2 |   1     |   2 
 3 |   2     |   2 

ユーザーが予定しているイベントを表示しようとしています。特定のユーザーが参加する予定のイベント情報だけを取得して表示したい。

ジョンが参加しているイベントからイベント情報を一覧表示するにはどうすればよいですか?

したがって、出力は次のようになります。

johns events
--------------------
concert | moon
sport   | ukraine

これで十分に説明できたことを本当に願っています!そうでない場合は言ってください。

4

1 に答える 1

1

基本的には、INNER JOINユーザーが参加する予定のイベントのみが必要なため、必要な will で十分です。

SELECT  c.name, c.location
FROM    users a
        INNER JOIN user_events b
            ON a.ID = b.userID
        INNER JOIN events c
            ON b.eventID = c.ID
WHERE   a.name = 'JOHN'

結合についてさらに詳しく知りたい場合は、以下のリンクにアクセスしてください。

出力

╔═════════╦══════════╗
║  NAME   ║ LOCATION ║
╠═════════╬══════════╣
║ concert ║ moon     ║
║ sport   ║ ukraine  ║
╚═════════╩══════════╝
于 2013-03-17T15:25:07.953 に答える