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 Studioのフィルター機能の使い方を解説 その2 ~数値型~

今回もSAS Studioのフィルター機能について解説します。(前回:【SAS】SAS Studioのフィルター機能の使い方を解説 その1 ~文字型~ | ビジネスイッチ (how-to-busine …

【SAS】INPUTは文字型を数値型に変換する

今回はINPUTについて解説します。 /*8桁*/ data work.a; a = input(“20061228”, 8.); run; 文字型⇒数値型への変換はinputを使う。文字型&#822 …

【SAS】NLDATE関数はSAS日付値を設定した書式に変換して返す。

今回はNLDATE関数について解説します。 /* nldate_1 */ data data1; Id1 = nldate(’22jan2022’d,’%Y%m%d’); run; nldateにより …

【SAS】%MACROはマクロを定義することができる。【%MEND】

今回はマクロについて解説していきたいと思います。 %macro data1; data data1 ; id1=”1111″; id2=”1111″; id3=”1111″; output; id1= …

no image

【SQL】【Snowflake】テーブルに値を格納する方法【INSERT】

今回はSQLを使って、テーブルに値を格納する方法について解説します。 まず、カラム(列)だけ用意した空のテーブルを用意します。 (参考:【SQL】【Snowflake】テーブルの更新【CREATE O …