IN
式は、メンバーシップ・テストを実行します。
IN
式では、対象のセットを特定し、そのセット以下の属性を持つレコードにフィルタ処理するユースケースに対処します。 これらは、HAVING
およびPAGE
の式と組み合せて使用できます。
IN
の式はサポートされており、ターゲット文は名前付きの状態を参照しています。このルールは、ターゲット状態の主キーと照合される大カッコ内に1つの式のみ存在する必要があります。 フィルタ処理されていない状態のレコード・セットに対して式が評価されることはありません。
IN構文
[expr1, expr2, …] IN StatementName
[expr] IN StatementName
この状態構文の理由は、フィルタされるコレクションなどの状態には常に1つのキー属性があるため、IN式には、それらを参照する1つの式が大カッコ内に含まれている必要があることです。
セットは、IN
の式でサポートされていることに注意してください。 名前付き文のグループ・キーの1つがセットの場合、大カッコ内の対応する式は、同じ型のセットである必要があります。
INの例
DEFINE HighValueCust AS SELECT SUM(SalesAmount) AS Value FROM SaleState GROUP BY CustId HAVING Value>10000 ; RETURN Top_HVC_Products AS SELECT COUNT(1) AS NumSales FROM SaleState WHERE [CustId] IN HighValueCust GROUP BY ProductName ORDER BY NumSales DESC PAGE(0,10)