0

たとえば、table1 と table2 というテーブルがあるとします。

table1{q_id,q_text,date},
table2{a_id,q_id,a_text}

次のように、両方のテーブルで結合クエリを実行します。

SELECT *
FROM table1
INNER JOIN table2 ON table1.q_id = table2.q_id

私はこのようなデータを取得します

q_id     q_text    date   a_id   q_id   a_text
 1      sometext    ..     13      1    someanswer  
 1      sometext2   ..     67      1    someanswet2

2 つのテーブル間の 1 対多の関係になるため、1 つの q_id に対して多数の a_id が存在する可能性があるため、同じ q_id を持つすべての a_id を同じ行に配置するクエリを作成したいと考えました。私の言いたいことが理解できれば。したがって、上の両方の行には同じq_idがあるため、それらを同じ行に配置したいと考えています。ありがとう

4

2 に答える 2

0
  SELECT table1.q_id,table1.q_text,table1.date,table2.a_id,table2.a_text, group_concat(table2.a_id SEPARATOR ',') as a_ids
-> FROM table1
-> LEFT JOIN table2
-> ON table1.q_id = table2.q_id
-> GROUP BY table1.q_id

group_concat とセパレーター「,」を使用

于 2012-08-10T17:32:17.863 に答える
0
SELECT table1.q_id,table1.q_text,table1.date,table2.a_id,table2.a_text
    -> FROM table1
    -> LEFT JOIN table2
    -> ON table1.q_id = table2.q_id;
于 2012-08-10T17:09:45.847 に答える