INNER JOIN SAS

【SAS】SQLにおける複数テーブルの結合 その2【INNER JOIN】

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

今回も複数テーブルの結合について解説します。

前回の記事、【SAS】SQLにおける複数テーブルの結合 その1【UNION ALL】 | ビジネスイッチ (how-to-business.com)の続きとなります。


/* inner join_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;


data data2;
  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 data3 AS
  select * from data1 inner join data2 on data1.Id1 = data2.Id1;
quit;

  • 名前が全く同じ列は表示されない。

/* data1,data2_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;


data data2;
  Id4=1111; Id5=1111; Id6=1111;
    output;
  Id4=2222; Id5=2222; Id6=2222;
    output;
  Id4=3333; Id5=3333; Id6=3333;
    output;
run;


proc sql;
  create table data3 AS
  select * from data1,data2;
quit;

  • from句に複数テーブルあるときは、結合されてデカルト積になる。

/* inner join_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;


data data2;
  Id4=1111; Id5=1111; Id6=1111;
    output;
  Id4=2222; Id5=2222; Id6=2222;
    output;
  Id4=3333; Id5=3333; Id6=3333;
    output;
run;


proc sql;
  create table data3 AS
  select * from data1 inner join data2 on data1.Id1 = data2.Id4;
quit;

  • data1.Id1 = data2.Id4で一致したレコードを結合する。

-INNER JOIN, SAS

執筆者:


comment

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

関連記事

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

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

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

今回はINTNX関数について追加で解説します。 過去記事では INTNX関数 の使い方(引数3つ)について解説しました。⇒【SAS】INTNX関数は指定期間の条件を満たす日付けを返す。 | ビジネスイ …

【SAS】SASで良く使うテクニック。その7 「条件付き書式」~差分があるセルに色を付けたい時~【Excel】

今回はSASで良く使うテクニックということで、データセットのコンペアにおいて、差分があるセルに色を付けたい時ときは「条件付き書式」が役に立つ理由を解説していきます。 (参考:【SAS】SASで良く使う …

【SAS】NODUPはソート時に全ての変数における重複を削除する

今回はNODUPについて解説します。 前回NODUPKEYについて解説しました。 【SAS】NODUPKEYはソート時に重複を削除する 今回のNODUPは前回の文法の亜種という感じです。 /*nodu …

【SAS】PUTN関数は数値に対して出力形式を指定して変換する。

今回はPUTN関数について解説します。 /* putn_point. */ proc format; value point 1-50=’Low’ 51-100=’High’; run; data d …