複数の値を 1 つの SQL フィールドに格納し、このデータを確実に検索できるようにするにはどうすればよいですか?
たとえば、これができるようになりたい
name | num
-----------
John | 21, 22, 34
Mike | 41, 32, 43
Dave | 12, 23, 34
$query = SELECT name from table WHERE num = '12'
// result should be 'Dave'
また
$query = SELECT name from table WHERE num = '22' or num = 41
// result should be John and Mike
私はPHPを使用しているので、入力時にデータをシリアライズし、結果の配列をアンシリアライズして検索できることはわかっていますが、データセットは非常に大きいため、データセット全体を取得する必要があるため、クエリが非常に遅くなります。結果の配列をループします。
私が見逃したかもしれないものはありますか?絶対にたくさんのグループとそれぞれに多くのオプションがあるため、可能なオプションごとにテーブルを作成する必要はありません。
何か案は?前もって感謝します
編集:上記の例は単なる例であり、任意の数の「数値」が存在する可能性があります