ハードコードされた値を持つ SQL "IN" 句でのタプルの使用
SQL では、"IN" 句を使用して次のことを確認できます。列の値は、指定されたリスト内の任意の値と一致します。ただし、タプルやハードコーディングされた値を操作する場合には課題が発生します。
文字列連結の代替
提案されたソリューションの 1 つは文字列連結を使用していましたが、大規模なテーブルでは非効率であるため、
有効な標準 SQL-92構文
より効率的なアプローチは、標準 SQL-92 構文での構文の微調整を利用することです。
SELECT * FROM mytable WHERE (group_id, group_type) IN ( VALUES ('1234-567', 2), ('4321-765', 3), ('1111-222', 5) );
この構文は、PostgreSQL や PostgreSQL などの多くの一般的な SQL 製品で有効です。 SQLite。ただし、SQL Server 2022 は現在これをサポートしていません。
結論
二重引用符を一重引用符に置き換え、VALUES キーワードを追加することで、より効率的な構文を利用できます。 SQL の「IN」句でハードコードされた値を使用してタプルをクエリします。このアプローチは文字列連結の欠点に対処し、大規模なテーブルに対してよりスケーラブルなソリューションを提供します。
以上がハードコードされた値を含む SQL の「IN」句でタプルを効率的に使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。