DISTINCT SAS SQL

【SAS】DISTINCTは重複をユニークにする。【SQL】

投稿日:

今回はSQL文のDISTINCTについて解説します。


/* Id1 */
data data1;
  Id1=1111; Id2=1111; Id3=1111; Id4=1111;
    output;
  Id1=1111; Id2=1111; Id3=1111; Id4=2222;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=3333;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=4444;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=5555;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=6666;
    output;
run;

proc sql;
   create table data2 AS
   select  distinct Id1
   from data1 t1;
quit ;

  • select句にdistinctを用いると、重複をユニーク化する。
  • 今回はId1の重複をユニーク化。

/* Id1,Id4 */
data data1;
  Id1=1111; Id2=1111; Id3=1111; Id4=1111;
    output;
  Id1=1111; Id2=1111; Id3=1111; Id4=2222;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=3333;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=4444;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=5555;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=6666;
    output;
run;

proc sql;
   create table data2 AS
   select  distinct Id1,Id4
   from data1 t1;
quit ;

  • select句にdistinctを用いると、重複をユニーク化する。
  • 今回はId1-Id4の重複をユニーク化。

/* *1 */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222;
    output;
  Id1=2222; Id2=2222; Id3=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

proc sql;
   create table data2 AS
   select  distinct *
   from data1 t1;
quit ;

  • select句にdistinctを用いると、重複をユニーク化する。
  • 今回は全項目での重複をユニーク化。

/* *2 */
data data1;
  Id1=1111; Id2=1111; Id3=1111; Id4=1111;
    output;
  Id1=1111; Id2=1111; Id3=1111; Id4=2222;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=3333;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=4444;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=5555;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=6666;
    output;
run;

proc sql;
   create table data2 AS
   select  distinct *
   from data1 t1;
quit ;

  • select句にdistinctを用いると、重複をユニーク化する。
  • 今回は全項目での重複をユニーク化。

-DISTINCT, SAS, SQL

執筆者:


comment

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

関連記事

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

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

【SAS】STOPステートメントは処理を切り上げる。

今回はSTOPステートメントについて解説していきます。 /* stop1 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; stop …

【SAS】_NULL_は出力しないデータセット文を作るのに便利。

今回は_NULL_について解説します。 実は前回の記事で使用していた文法です。 【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。 単元は分けた方が良いと思ったので、別記事として …

【SAS】SASで良く使うテクニック。その1 Excel関数のIF~2テーブルを比較したいとき~

今回はSASで良く使うテクニックということで、2テーブルを比較するときはExcelでIF関数を使うと良い理由を解説していきます。 ぜひ、やってみてください。 まずは比較したいデータセット2つをExce …

【SAS】FORMATプロシージャはフォーマットルールを定義し、値を書き換える

今回はFORMATプロシージャについて解説します。 /* format */ data data1; 番号=”111111″; test = 10; output; 番号=”222222″; test …