sql >> データベース >  >> RDS >> Oracle

'orderby'値が同一である場合、Oracleが特定のシーケンスを返すのはなぜですか?

    クエリを次のように修正しない限り、順序は「純粋なチャンス」ではありません。

    SELECT
      Date,
      Amount
    FROM MyTable
    WHERE Date = '26-OCT-2010'
    ORDER BY Date, DBMS_RANDOM.VALUE;
    

    順序は「任意」です。 Oracleは、「サイコロを投げて」任意の順序を決定するのではなく(不必要なコストが発生します)、データを検出した順序で返すだけです。これは、短期的には実行ごとに同じである可能性があります。 (長期的には、環境内で何かが変更されて順序が異なる場合がありますが、それでも任意です)。



    1. 大量のメモリを消費する大規模なDjangoQuerySetを反復処理するのはなぜですか?

    2. MYSQL-複数のテーブルを参照する1つの列

    3. OracleデータベーストリガーからJavaプログラムを呼び出す

    4. IRIWorkbenchでのMicrosoftAccessへの接続