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】ATTRIBの使い方を解説

今回はATTRIBの使い方を解説していきます。 (参考:【SAS】ATTRIBとRENAMEを同時に使うときの注意点 | ビジネスイッチ (how-to-business.com)) /* 長さ */ …

【SAS】IFステートメントは処理を分岐できる。その4~THEN DO, ELSE DO~【END】

今回はIF文の分岐で、複数の命令を実行する方法について、解説していきます。 【併せて読みたい記事】 【SAS】IFステートメントは処理を分岐できる。その1 | ビジネスイッチ (how-to-busi …

【SAS】計算で求められた変数に対するIFとWHEREの振舞いの違い【SAS Base Programming対策1】

/* where id3 */ data data1; id1=1111; id2=1111; id3=1111; output; id1=2222; id2=2222; id3=2222; outp …

【SAS】データセットのエンコードを答えさせる問題【CONTENTS】【SAS Base Programming対策7】

今回はデータセットのエンコードを答えさせる問題について解説します。SAS Base Programming試験を受けたときに出題されました。 data data1; Id1=1111; Id2=111 …

【SAS】INTNX関数は指定期間の条件を満たす日付けを返す。

今回はINTNX関数について解説します。 /* intnx_1 */ data data1; Id1 = intnx(“YEAR”,’16jan2022’d,1); format Id1 yymmdd …