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】_NULL_は出力しないデータセット文を作るのに便利。

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

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

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

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

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

【SAS】&SYSUSERID.はログインIDを取得する自動マクロ変数

今回は&SYSUSERID.について解説します。 /* &sysuserid. */ %put &sysuserid.; &sysuserid.はログインIDを自動マク …

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

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