2 つの mysql テーブルがあります。
car_model:
id (int) (Primary Key)
title (varchar)
id_brand (int) FK to car_brand table
car__car_model: - relation many to many
id_model (int)
id_advice_model (int)
car__car_model には、次のデータがあります。
(id_model) (id_advice_model)
12 12
12 45
12 67
12 78
13 13
13 12
13 67
13 105
そして、私はこのデータを次のように取得したいと考えています:
12 12,45,67,78
13 13.12.67,105
次のように group_concat と group by を使用します。
SELECT ccm.id_model,group_concat(ccm.id_advice_model) FROM car__car_model as ccm group by ccm.id_model
質問: ID が 12,45,67,78 の場合、この文字列の car_model テーブルからタイトルを取得するにはどうすればよいですか? そして、1 つのクエリで実行したい - クエリをカスタマイズする
更新: そして今、私は別の質問があります: 私はもう1つのテーブルを持っています:
car_brand:
id (int) (PK)
title (varchar)
私の car_model テーブルにはフィールドid_brandがあります
質問 2: car_model からタイトルを使用して car_brand からタイトルを取得するにはどうすればよいですか - このように - Ford Focus、Fiat Linea など - (あなたの助けを借りて) car_model からタイトルのみを取得できるようになりました。リネア
更新: この問題を解決するには -
SELECT
id_model,group_concat(concat(cb.title,' ',cm.title))
FROM
car__car_model as ccm
inner join car_model cm on (cm.id = ccm.id_advice_model)
inner join car_brand cb on (cb.id=cm.id_brand)
group by ccm.id_model