SAS SQL SUM 要約関数

【SAS】SUMは足し算をする。その2【要約関数】【SQL】

投稿日:2022年2月13日 更新日:

今回もSQLのSUM(要約関数)について解説します。

過去記事でも、SQLのSUM関数について取り上げました。【SAS】SUMは足し算をする。その1【SQL】 | ビジネスイッチ (how-to-business.com)


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


proc sql;
  create table data2 AS
  select SUM(Id1)
  from data1
quit;

  • SUM(Id1)により、Id1の合計が出力される。(要約関数)

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


proc sql;
  create table data2 AS
  select SUM(Id1)
  from data1
  group by Id1;
quit;

  • SUM(Id1)により、Id1の合計が出力される。(要約関数)
  • group byにより、Id1ごとにSUM(Id1)が計算される。

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


proc sql;
  create table data2 AS
  select SUM(Id3) AS 合計数量
  from data1
  group by Id1;
quit;

  • SUM(Id3)により、Id3の合計が出力される。(要約関数)
  • group byにより、Id1ごとにSUM(Id3)が計算される。

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


proc sql;
  create table data2 AS
  select *,SUM(Id1)
  from data1
quit;

  • SUM(Id1)により、Id1の合計が出力される。(要約関数)
  • 元のデータに要約関数の結果がマージされる。

-SAS, SQL, SUM, 要約関数

執筆者:


comment

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

関連記事

【SAS】プロパティ表示を使う方法

今回はプロパティ表示について触れていきます。 /* data1_1 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; id1=”22 …

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

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

【SAS】ARRAYステートメントは配列を設定することができる。その2

今回はarrayステートメント(その2)について解説します。 以前、過去記事でarrayステートメントについて解説していました。⇒【SAS】ARRAYステートメントは配列を設定することができる。 | …

【SAS】FIRST, LAST↔SORT NODUPKEYの変換

今回はfirst, last↔SORT NODUPKEYの変換について解説します。 結論を先に書くと、変換できる場合、変換できない場合とがあります。 /*sort1*/ data dat …

【SAS】INTCK関数は指定された区間に指定された単位を何回跨ぐか数える。

data data1; Id1 =intck(“YEAR”, ’31Dec2019’d, ‘1Jan2020’d); run; 2019/12/31~2020/1/1の間に年を何回跨ぐか数える。 /* …