ORDER BY SAS SQL

【SAS】ORDER BY句無しで抽出した際の出力順【SQL】

投稿日:

この記事の要約:「ORDER BYを使わない場合、SQLで抽出した際の並び順は保証されない

SQL文で抽出を行った際に、困ったことが起きました。

同じPG文なのに1回目と2回目で出力結果に違いがあるのです。

仕事上でこんな事象が起きて、仕事上のPGを載せる訳にはいかないので、

このブログ記事を書いているプライベートPC上で再現をしようとしたのですが、

再現できませんでした。

なのでこれから貼るキャプチャはイメージ図として見ていただけると幸いです。

結論から言うと、「ORDER BYを使わない場合、SQLで抽出した際の並び順は保証されない」みたいです。

イメージ図で表すと、こんな感じ。

DBから抽出した且つ、ORDER BY句が無い時に、今回の事象が起こり得るようです。

体感ですが、DBから抽出する際に、件数が多いほど今回の事象が見られやすいかと思います。

今回の事象を回避するには、

といったことが有効だと考えられます。

-ORDER BY, SAS, SQL

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】SASで良く使うテクニック。その5 「SUM関数」~データセットの差分がいくつあるのか数えたい時~【Excel】

今回はSASで良く使うテクニックということで、データセットの差分がいくつあるのか数えたいときは「SUM関数」が役に立つ理由を解説していきます。 (参考:【SAS】SASで良く使うテクニック。その1 E …

【SAS】CONTENTSプロシージャはデータセットに関する情報を表示する。

今回はCONTENTSプロシージャについて解説します。  /* data1 */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1= …

no image

【SQL】【Snowflake】テーブルの更新【CREATE OR REPLACE TABLE】

今回は、SQLでテーブルを更新する方法について解説します。 (関連記事:テーブルの新規作成 【SQL】【Snowflake】テーブルの新規作成【CREATE TABLE】 | ビジネスイッチ (how …

【SAS】SQLプロシージャはSQLを実行できる。

今回はSQLプロシージャについて解説します。 /* sql_1 */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; Id2=2 …

【SAS】SASで良く使うテクニック。その6 「名前ボックス」~指定したセルに飛びたい時~【Excel】

今回はSASで良く使うテクニックということで、指定したセルに飛びたい時は「名前ボックス」が役に立つ理由を解説していきます。 以前の記事で「Ctrl+R」や「Ctrl+D」を用いた例を紹介してきました。 …