ホームページ > データベース > mysql チュートリアル > SQL IN 句を使用して複数の列を効率的にクエリする方法

SQL IN 句を使用して複数の列を効率的にクエリする方法

Mary-Kate Olsen
リリース: 2024-12-28 12:53:16
オリジナル
277 人が閲覧しました

How to Efficiently Query Multiple Columns with the SQL IN Clause?

複数列の SQL IN 句

IN 句を使用して複数の列に基づくテーブルに対してクエリを実行する場合、複数の OR 条件を含む単一のクエリを構築するのは面倒になります。代わりに、次のアプローチを利用できます。

タプル IN 句の使用

最も直接的な解決策は、IN 句のタプル バージョンを使用することです。たとえば、firstName、lastName、および City 列を持つ User テーブルがある場合、(firstName, lastName) タプルのリストの都市を取得するクエリは次のようになります:

SELECT City
FROM User
WHERE (firstName, lastName) IN (('a', 'b'), ('c', 'd'));
ログイン後にコピー

ステージング テーブルの作成

もう 1 つのオプションは、すべての可能な (firstName、lastName) の組み合わせを使用してステージング テーブルを作成し、このテーブルと User テーブルの間で結合を実行することです。ただし、この方法には追加のセットアップとメンテナンスが必要であり、大規模なデータセットには理想的ではない可能性があります。

推奨事項

一般的なシナリオでは、そのシンプルさと柔軟性により、タプル IN 句のアプローチが推奨されます。これにより、複雑なクエリの構築やテーブルの追加が不要になります。ただし、検索データがデータベースの外部に保存されている場合は、結合やサブクエリなどの代替方法が必要になる場合があります。

以上がSQL IN 句を使用して複数の列を効率的にクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート