3

DB には 4 つのテーブルがあります。

1 番目のテーブル構造:id,club_id,Tag,Kurse_namen,from,to,Kursleiter,kursraum

ここで club_id は、ユーザー テーブル内のユーザー ID を意味します

id     |   club_id         |    Tag      |Kurse_namen  | Kursleiter| kursraum
____________________________________________________________________________________________
1      |         35         |     Monday |2           |2           | 4
2      |         35         |     tue    |3           |3           | 3
3      |         35         |    wen     |3           |3           | 3 
4      |         12         |    thu     |1           |2           | 4

2番目のテーブル 構造:テーブル名[kursplan_kurse]

id     |    club_id    | Kurse_namen    
______________________________________
1      |         35       |     Kurse1
2      |         35       |     Kurse2
3      |        35        |     Kurse3
4      |         35       |    Kurse4

3番目のテーブル 構造:テーブル名[kursplan_kursraum]

id     |    club_id    | kursraum   
______________________________________
1      |         35        |     kursraum1
2      |         35         |    kursraum2
3      |        35         |     kursraum3
4      |         35       |    kursraum4

4番目のテーブル構造:テーブル名[kursplan_trainer]

id     |    club_id    | Kursleiter 
______________________________________
1      |         35        |     Kursleiter1
2      |         35         |    Kursleiter2
3      |        35         |    Kursleiter3
4      |         35       |  Kursleiter4

私の選択クエリは

$query = "SELECT * FROM `kursplan` WHERE `club_id` = '35' AND `Tag` = 'Monday' ";

この形式で結果を取得しています

Kurse_namen | kursraum  |Kursleiter |
=====================================
2           | 4        |2          |

今、私が達成したいのは、2番目、3番目、4番目のテーブルである3つのテーブルすべてから値を取得するためのJOINクエリをセットアップすることです

この形式の結果が必要です つまり、数値の代わりに名前が必要です

Kurse_namen    |   kursraum       | Kursleiter     
______________________________________________
Kurse2     |   kursraum4  |    Kursleiter2

私を助けてください。

4

5 に答える 5

2

結合に関連している場合、質問は明確ではありませんが、この sql で理解できます。

    select t2.Kurse_namen,t3.kursraum,t4.Kursleiter
    from table2 t2,table3 t3,table4 t4,table1 t1
    where t2.club_id=t3.club_id
    and t3.club_id=t4.club_id
    and t1.club_id=t2.club_id
    and t2.club_id=35
    and t1.tag='Monday'
于 2013-04-26T07:19:26.390 に答える
1

exには左結合を使用してください。

SELECT `TABLE2 NAME`.`FIELd NAME`, `TABLE3 NAME`.`FIELD NAME` , `TABLE4 NAME`.`FIELD NAME`
        FROM `TABLE NAME` 
        LEFT JOIN `TABLE2` 
            ON `TABLE2`.`FIELD(UNIQUE DATA EXAMPLE ID)` = `TABLE3`.`FIELD(UNIQUE DATA EXAMPLE ID)` `TABLE4 NAME`.`FIELD NAME(UNIQUE DATA EXAMPLE ID)`
于 2013-04-26T07:18:45.683 に答える