特定のフィールドの値の配列を含む MySQL テーブルからの選択
MySQL データベースを使用する場合、必要なシナリオに遭遇することがあります。配列に格納された値に基づいてデータを取得します。たとえば、ユーザー ID のリストを含む $array という名前の配列があるとします。
$array = array(1, 40, 20, 55, 29, 48);
To myField 列がこの配列内の値と一致する特定の行を選択するには、従来はループを使用して複雑な "WHERE -- OR -- OR -- OR" ステートメントを構築できました。ただし、よりシンプルで効率的なアプローチがあります。
「IN」演算子の利用
MySQL の「IN」演算子は、このようなシナリオに洗練されたソリューションを提供します。
$sql = "SELECT * FROM `myTable` WHERE `myField` IN (" . implode(",", $array) . ")";
この例では、"IN" 演算子により、myField 列が $array に格納されている値のいずれかに一致する行がクエリで確実に取得されます。 implode() 関数を使用して、配列をカンマ区切りの文字列に変換し、SQL クエリ内で連結します。
実装例
"IN" 演算子を使用してクエリを実行するには、次の手順に従います。
「IN」演算子を利用すると、配列に格納された複数の値に基づいて MySQL テーブルから行を効率的に選択できるため、複雑で低速なループ メカニズムの必要性が軽減されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3