順序

順序は、一連の0 (ゼロ)個以上の項目です。すべての式は、0 (ゼロ)個以上の入力順序を処理し、結果として出力順序を生成します。

順序は、単に0 (ゼロ)個以上の項目のコレクション・セットです(NULLを含む)。順序は、項目自体(ネストされた順序がない)でもコンテナでもありません。順序を表すパブリックAPIレベル(または内部)に永続データ構造またはjavaクラスのいずれもありません。通常、式は順序の項目を反復することで順序を処理します。

注意:

配列は一連の項目ではありません。かわりに、中に他の項目が含まれる項目であっても、これは単一の項目です。したがって、配列は項目のコンテナです。

一般に、Oracle NoSQL Databaseの式は順序を処理して順序を生成しますが、その多くは、順序が受け入れるか生成する順序のカーディナリティに制限を設定します。たとえば、複数の式はスカラーです。つまり、入力順序に含まれる項目が1つのみであることと、2つ以上の項目の順序を生成しないことが必要です。単一の項目は、その単一の項目のみを含む順序と同等であるとみなされることに注意してください。

順序のボックス化およびボックス化解除

式Eによって生成された順序は、配列コンストラクタを使用してEをラップする([ E ])ことにより、配列に変換できます。配列コンストラクタとマップの項を参照してください。これは、順序のボックス化と呼ばれます。逆に、配列をボックス化解除する式があります。このような式は、配列に含まれる項目のすべてまたは一部を選択して、これらの項目を順序として返します。配列の暗黙的なボックス化解除は行われません。ボックス化解除を実行するには、必ず式を適用する必要があります。ほとんどの場合、順序のボックス化も明示的に実行する必要があります。つまり、問合せ作成者が配列コンストラクタを使用する必要があります。ただし、ボックス化が暗黙的に行われる場合、つまり、式(配列コンストラクタではない)によって入力順序が配列に変換される場合があります。

注意:

標準SQLでは、式とは、スカラー式、つまり厳密に1つの(アトミックな)項目を返す式を意味します。複数の項目(または0 (ゼロ)個の項目)を生成できる操作は、問合せブロック(トップレベルの問合せまたは副問合せのいずれか)と、結合、交差などの集合演算子(これらの場合、項目はタプル)のみです。Oracle NoSQL Databaseでも、ほとんどの式はスカラーです。標準SQLの問合せブロックと同様に、Oracle NoSQL Databaseのselect-form-where式は、一連の項目を返します。ただし、ナビゲートして複雑な階層データから情報を抽出するために、Oracle NoSQL Databaseにはパス式も含まれます。パス式の項を参照してください。パス式は、Oracle NoSQL Databaseの複数項目の順序の他のメイン・ソースです。ただし、パス式が副問合せとして表示される場合、Oracle NoSQL Databaseモデルは標準SQLとそれほど違いはありません。