ホームページ > データベース > mysql チュートリアル > SQL の「IN」句のタプルを効率的に比較するにはどうすればよいですか?

SQL の「IN」句のタプルを効率的に比較するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-03 00:37:38
オリジナル
832 人が閲覧しました

How Can I Efficiently Compare Tuples in SQL's `IN` Clause?

SQL "IN" 句でのタプルの使用

複雑な WHERE 句を使用する場合、多くの場合、フィールドまたはフィールドのセットを値のリストと比較する必要があります。タプルを比較する場合、いくつかのオプションを使用できます。

ハードコードされた値を含む IN 句

1 つの方法は、IN 句内でハードコードされた値を使用することです。ただし、各レコードで文字列の連結と変換が必要になるため、大規模なテーブルの場合は非効率的になる可能性があります。

VALUE 句の使用 (標準 SQL)

標準のより効率的なオプションSQL-92 データベースでは、IN 演算子内で VALUES 句を使用します。これには、タプル リストを括弧で囲み、VALUES キーワードを追加することが含まれます。

SELECT *
FROM mytable
WHERE (group_id, group_type) IN (
                                VALUES ('1234-567', 2), 
                                       ('4321-765', 3), 
                                       ('1111-222', 5)
                               );
ログイン後にコピー

データベース互換性

この構文はすべての SQL でサポートされているわけではないことに注意することが重要です。製品。 SQL Server 2022 の時点では、この機能は計画されていないとみなされます。ただし、PostgreSQL と SQLite はこの構文をサポートしています。

以上がSQL の「IN」句のタプルを効率的に比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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