ここにテーブルがあります: TABLE1
ID | id_activity | id_elem | text
---------------------------------------
1 | 1 | 11 | text1 |
2 | 1 | 12 | text2 |
3 | 1 | 13 | text3 |
4 | 2 | 11 | text4 |
5 | 2 | 12 | text5 |
6 | 2 | 13 | text6 |
7 | 3 | 11 | text7 |
8 | 3 | 12 | text8 |
9 | 3 | 13 | text9 |
10 | 4 | 11 | text10 |
11 | 4 | 12 | text11 |
12 | 4 | 13 | text12 |
13 | 5 | 11 | text13 |
14 | 5 | 12 | text14 |
15 | 5 | 13 | text15 |
16 | 6 | 11 | text16 |
17 | 6 | 12 | text17 |
18 | 6 | 13 | text18 |
次のような結果を出す必要があります。
ID | text_elem_11 | text_elem_12 | text_elem_13
---------------------------------------------------
1 | text1 | text2 | text3 |
2 | text4 | text5 | text6 |
3 | text7 | text8 | text9 |
4 | text10 | text11 | text12 |
5 | text13 | text14 | text15 |
6 | text16 | text17 | text18 |
これを行う正しい方法は何ですか?次のクエリでは、最初と2番目の列を持つテーブルのみを取得できます
SELECT table1.ID,
table1.id_elem,
elem_11.text AS text_elem_11
FROM table1
INNER JOIN table1 AS elem_11 ON
table1.id_activity = 1 AND
table1.id_elem = 11 AND
elem_11.id_elem = 11
これが結果です
id_activity | id_elem | text_elem_11 |
-----------------------------------------
1 | 11 | text1 |
1 | 11 | text4 |
1 | 11 | text7 |
他の2つの列を追加する方法がわかりません。単一のクエリでそれを行うのが良い考えである場合...だから、何か考えはありますか?