を実行select * from mytable
すると、レコードはどの順序で表示されますか? 最初の列を取るか、それとも何らかのメタデータで並べ替えるか?
Oracle データベースを使用しています。
デフォルトの「ソート」順序はありません。リレーショナル テーブルの行はソートされません。
特定の注文を取得する唯一の (本当に: 唯一の) 方法は、ORDER BY
SELECT
a を実行せずに実行したときに表示される順序ORDER BY
は、まったくの偶然であり、次の実行で変更される可能性があります。
順序は、さまざまな理由で変更される可能性があります。
これは、「順序」がどのように変化するかを示す小さな SQLFiddle です: http://sqlfiddle.com/#!4/19d14/2
最初の「オーダー」は広告掲載オーダーと同じではないことに注意してください。
通常、指定しない限り、並べ替え順序はありません。
これは、保存、インデックス作成、インデックスの保存、インデックスの選択、実行計画、データベース エンジンの実装など、さまざまです。
ご覧のとおり、並べ替え順序を指定するか、それを当てにしないかのどちらかです。