0
私はすべての人が1つまたは複数の国を持つことができる人員データベースを持っています。複数の国のドロップダウンリストから国を追加することができます。 は人が、この列全体に複数の値がある場所をすべて選択してください
name country
john USA, UK, Poland
joe USA
Jack Germany
ようなことができ、ユーザは、私は、ユーザーの選択に基づいて人々をフィルタリングしようとしています<% =国%> の値を変更することで、人々を絞り込むことができます。私はこのクエリ
SELECT *
FROM `personnel`
WHERE <%= country %> LIKE `country`
ORDER BY `industry` ASC, `name` ASC
問題は一国でこの選択フィルター行のみ(人)であるを使用しています、そして、それはより多くの、1つの国を持っている人は表示されません。 私は=ではなくLIKEの使用しようとしましたが、その1あなたはLIKE文に%を追加する必要が
データ構造を修正しました。PersonnelCountryという表があり、1人の人と国ごとに1行あります。 –
DBは人事、私の悪いです。はい、すべての人が1つの行を持ち、国の列には1つまたは複数の国を持つことができます – k185
しかし、最良の解決策は、@ GordonLinoffが提案したようにテーブル構造を正規化することです。 – Shadow