0
不工作加入多個SQL表
SELECT a.name, atn.name
FROM t1 a
JOIN t2 ap ON a.id = ap.area_id
JOIN t3 atn ON atn.id = ap.parent_id
我有一個區域名稱和它們的類型(如針,病房和簡單的區域名稱)的表t1和t2表與他們的映射和表T3與類別名,他們的ID。
我想要一個帶有三列(區域名稱,別針,病房)的結果,即結果應該是哪個區域位於pin和病房之下。
t1
:
--------------------------
| id | area name | type |
---------------------------
| 1 | a | 5 |
| 2 | b | 8 |
| 3 | x | 7 |
| 4 | z | 8 |
| 5 | pq | 8 |
---------------------------
t2
:
------------------------------
| id | area_id | parent_id |
------------------------------
| 1 | 2 | 1 |
| 2 | 2 | 3 |
| 3 | 4 | 1 |
| 4 | 5 | 3 |
-----------------------------
t3
:
------------------
| id | name |
------------------
| 5 | pin |
| 7 | ward |
| 8 | area |
------------------
結果:
--------------------------
| area | pin | ward |
--------------------------
| b | a | x |
| z | a | |
| pq | | x |
--------------------------
任何人都知道如何得到這個,請幫助我。我不知道如何獲得這個價值。我試過但找不到任何東西。
沒有任何情況符合JOIN t3 atn ON atn.id = ap.parent_id - 所以我不希望它能夠工作。 –
根據您的情況,您的預期結果不正確。 –
@ BrianTompsett-湯萊恩這是一個關鍵問題 – Drew