翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
セット演算子
注記
このSQLコマンドをサポートする AWS データソース統合を確認するには、「」を参照してくださいサポートされている OpenSearch SQLコマンドと関数。
セット演算子は、2 つの入力リレーションを 1 つのリレーションにまとめるために使用されます。 は 3 種類のセット演算子 OpenSearch SQLをサポートしています。
-
EXCEPT
、またはMINUS
-
INTERSECT
-
UNION
入力リレーションは、各列の列数と互換性のあるデータ型が同じである必要があります。
EXCEPT
EXCEPT
と は、1 つのリレーションで見つかったが、他のリレーションでは見つからない行EXCEPT ALL
を返します。 EXCEPT
(または、EXCEPT DISTINCT
) は個別の行のみを取り、 EXCEPT ALL
は結果の行から重複を削除しません。MINUS
は のエイリアスであることに注意してくださいEXCEPT
。
[Syntax] (構文)
[ ( ] relation [ ) ] EXCEPT | MINUS [ ALL | DISTINCT ] [ ( ] relation [ ) ]
例
-- Use table1 and table2 tables to demonstrate set operators in this page. SELECT * FROM table1; +---+ | c| +---+ | 3| | 1| | 2| | 2| | 3| | 4| +---+ SELECT * FROM table2; +---+ | c| +---+ | 5| | 1| | 2| | 2| +---+ SELECT c FROM table1 EXCEPT SELECT c FROM table2; +---+ | c| +---+ | 3| | 4| +---+ SELECT c FROM table1 MINUS SELECT c FROM table2; +---+ | c| +---+ | 3| | 4| +---+ SELECT c FROM table1 EXCEPT ALL (SELECT c FROM table2); +---+ | c| +---+ | 3| | 3| | 4| +---+ SELECT c FROM table1 MINUS ALL (SELECT c FROM table2); +---+ | c| +---+ | 3| | 3| | 4| +---+
INTERSECT
INTERSECT
と は、両方のリレーションにある行INTERSECT ALL
を返します。 INTERSECT
(または、INTERSECT DISTINCT
) は個別の行のみを取り、 INTERSECT ALL
は結果の行から重複を削除しません。
[Syntax] (構文)
[ ( ] relation [ ) ] INTERSECT [ ALL | DISTINCT ] [ ( ] relation [ ) ]
例
(SELECT c FROM table1) INTERSECT (SELECT c FROM table2); +---+ | c| +---+ | 1| | 2| +---+ (SELECT c FROM table1) INTERSECT DISTINCT (SELECT c FROM table2); +---+ | c| +---+ | 1| | 2| +---+ (SELECT c FROM table1) INTERSECT ALL (SELECT c FROM table2); +---+ | c| +---+ | 1| | 2| | 2| +---+
UNION
UNION
と は、いずれかのリレーションで見つかった行UNION ALL
を返します。 UNION
(または、UNION DISTINCT
) は個別の行のみを取りますが、 UNION ALL
は結果の行から重複を削除しません。
[Syntax] (構文)
[ ( ] relation [ ) ] UNION [ ALL | DISTINCT ] [ ( ] relation [ ) ]
例
(SELECT c FROM table1) UNION (SELECT c FROM table2); +---+ | c| +---+ | 1| | 3| | 5| | 4| | 2| +---+ (SELECT c FROM table1) UNION DISTINCT (SELECT c FROM table2); +---+ | c| +---+ | 1| | 3| | 5| | 4| | 2| +---+ SELECT c FROM table1 UNION ALL (SELECT c FROM table2); +---+ | c| +---+ | 3| | 1| | 2| | 2| | 3| | 4| | 5| | 1| | 2| | 2| +---+