2016-06-15 42 views
0

に生返すよりも、任意の値に一致する場合、私は名前がjob_postあるとsnapshot.Hereこれらの表には見え以下のように、2つのテーブルがあります。一致する複数の値のmysql

1)スナップショット表

enter image description here

2)私は2 table.Iが欲しい添付した

ここ

enter image description here

jobpostテーブルスナップショットスキルをジョブポストスキル(注:ここでスキル列には、スキルテーブルからスキルIDを格納した数値があります)と一致させます。スキルIDが返されるジョブポストの詳細よりも一致する場合。

どのようなクエリを書く必要がありますか?

+0

テーブルを正規化することを検討してください。スキルをjob_postに接続するためのリンクテーブルがあり、スナップショットスキルは – Marinus

+0

です。「skill_id」はカンマ '、'で区切られています。 – Blank

+0

@renoはいskill_idは**(、)**で区切られています。 –

答えて

1

はこれを試して、skill_idはコンマ,で区切られているものとする。)

select t1.* 
from job_post t1 
inner join snapshot t2 on t2.skill regexp replace(t1.skill, ',', '|') group by t1.job_id 

希望はあなたのために働きます。

+0

@Nisarg編集していただきありがとうございますが、なぜ 'group by'ですか? – Blank

+0

私は同じレコードを2度持っています。 –

+0

このクエリの仕組みを説明できますか? –

関連する問題