[RDB][SQL] JOINについて

公開日: : DB, SQL , , ,

JOINについて説明します。

まず、以下の2つのテーブルがあります。
簡単なテーブルなので、定義は割愛です。

商品マスタと、売上明細というよくあるパターンです。

PostgreSQL_JOIN_01 PostgreSQL_JOIN_02

●内部結合(inner join)
内部結合は、2つのテーブルのうち、一致する行のみ抽出します。

(例)商品マスタと売上明細を「id」で内部結合するSQL

select
  *
from
  商品マスタ T1
inner join
  売上明細 T2
on
  T1.id = T2.id

●外部結合(outer join)
外部結合は、片方のテーブルにしか無いデータも表示します。

殆どの場合、left outer joinを使用することが多いので、左外部結合を例にあげます。
left outer joinの場合は、左側のテーブルは全量出力し、
右側のテーブルは、左側テーブルと結合できたものが表示されます。

(例)売上明細と商品マスタを「id」で左外部結合するSQL

select
  *
from
  商品マスタ T1
left outer join
  売上明細 T2
on
  T1.id = T2.id

最後に、実践的な活用として、以下の情報を抽出してみます。
「売上明細の商品毎の総売上を抽出する。」

select
  T1.id
  , T2.name
  , sum(T2.price)
from
  売上明細 T1
inner join
  商品マスタ T2
on
  T1.id = T2.id
group by
  T1.id
  , T2.name

スポンサードリンク

関連記事

no image

[PostgreSQL][SQL] 日付関連

●interval tbl_Aから、tbl_Bの日付で7日前~現在に当てはまるレコードを抽出す

記事を読む

no image

[PostgreSQL][SQL] csvファイルのインポート

PostgreSQLでcsvファイルをインポートする際の方法を解説します。 例題として、以下の

記事を読む

no image

[SQLServer] 当日0時や月初0時の取得方法

当日0時や月初0時の取得方法です。 当日0時 DATEADD関数の2番目の引数にDATEDI

記事を読む

no image

[PostgreSQL] よく使う基本コマンド

PostgreSQLでpsqlのコマンド入力をする場合の一般的SQL以外のコマンドを列挙します。

記事を読む

no image

[SQL] case when文

select結果を条件で振り分けるSQL 通常はjoinとかwhere句で振り分けたりしますが

記事を読む

no image

[PostgreSQL] csvでSQL結果を出力する方法(psqlコマンド)

SQLエディタ、接続ツールなどを使うと簡単に行える CSVファイルでの出力 について、コ

記事を読む

no image

[SQL] primary keyの追加・削除

テーブル作成後にprimary keyを付与する方法です。 ALTER TABLE テーブ

記事を読む

no image

[SQL] 割合を計算するときの定石(割られる数をCASTする)

なんとか率などの割合を計算するときのメモ。 割られるほうの数値を浮動小数点にCASTする 割られ

記事を読む

no image

[SQL] 副問い合わせのin句に指定できるワードの数について

副問い合わせのin句に指定できるワードの数について ●Oracle 1000個が上限のようで

記事を読む

no image

[SQL][集計関数] 行数をカウントするcount関数の解説

count関数について説明します。 count関数は、グループ化した単位での件数をカウントしま

記事を読む

スポンサードリンク

Message

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

スポンサードリンク

no image
CentOSにdockerをインストールしてみた

前置き dockerをcentos7にインストールしてみました

no image
awkでのgsubを使った文字列置換(正規表現)

まえおき bashなどのシェルスクリプトで、lsした結果とかを

no image
bashで並列処理する方法(xargs)

並列処理とは 通常、意識せずにプログラムを書くと、大体の場合は

no image
AWS Redshiftの使用ストレージ容量をクエリで調べる方法

用途 AWS Redshfitのコンソールを見れば、使用中のス

no image
pythonでstorage transfer serviceを使ってみた。

準備 pythonのインストールとかする。 このあたり。

→もっと見る

  • 2021年7月
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  
  • 2021年7月
     1234
    567891011
    12131415161718
    19202122232425
    262728293031