図でイメージするOracle DatabaseのSQL全集

Oracle SQLの各機能をイメージ図を交えて解説

SQLの初心者から上級者までを広く対象読者として、Oracle SQLの各機能の典型的な使用例を、学習効率が高いと思われる順序で、SQLのイメージ図を交えて解説します。
SQLをイメージつきで理解することで、素早くイメージからSQLを考えられるようになることを目標とします。


Oracle ACE
山岸 賢治(やまぎし けんじ)
ACE

目次
第1回 さまざまな結合
はじめに
内部結合
where句
外部結合
完全外部結合
クロスジョイン
Partitioned Outer Join
自己結合

第2回 集合演算など
今回のテーマ
union集合演算
Outer unionもどき
intersect集合演算 (exists述語、in述語、内部結合)
minus集合演算 (not exists述語、not in述語)
select句での相関サブクエリ

第3回 分析関数
今回のテーマ
分析関数のメリット
分析関数の使用頻度
count(*) over()
count(*) over() と minus
max(Val) over(partition by PID)
count(distinct Val) over(partition by PID)
Row_Numberとrankとdense_rank
LagとLead
sum(Val) over(order by SortKey)
First_ValueとLast_Valueとnth_Value
First_ValueとLast_Valueのignore nulls
Rows 2 Preceding
Range 2 Preceding
全称肯定,全称否定,存在肯定,存在否定
ListAggとwmsys.wm_concat
Range指定でInterVal型の使用

第4回 集約関数など
今回のテーマ
集約関数の使用例
集約関数の使用頻度
countとmaxとminとsum
ListAggとwmsys.wm_concat
avgとmedianとstats_mode
group by句のイメージ
having句のイメージ
distinctオプション
Keep指定
集約関数のネスト
集約関数と分析関数

第5回 RollUp集計など
今回のテーマ
RollUp集計とは
RollUp集計(単数列)
RollUp集計(複数列)
RollUp集計(複合列)
group by 列指定,RollUp集計
grouping sets集計
cube集計
grouping関数
grouping_ID関数

第6回 階層問い合わせ
今回のテーマ
階層問い合わせとは
start with句とconnect by句
connect by句で複数条件
start with句の省略
Level擬似列
sys_connect_by_path関数
order siblings by
connect_by_IsLeaf擬似列
connect_by_root演算子
prior演算子
connect by NoCycle
connect_by_IsCycle疑似列
階層問い合わせでの枝切り
Level擬似列で枝切り
探索終了条件を指定して枝切り
訪問経路の列挙

第7回 再帰with句
第1部 再帰with句の使用例
with句とは
再帰のないwith句
1から5までの整数を出力
再帰with句で行の分割
第2部 データの探索
木構造なデータの探索
有向グラフの探索
search句 (深さ優先探索)
search句 (幅優先探索)
第3部 枝切り
枝切り(レベル制限)
枝切り(外部結合後のwhere句)
枝切り(ノード数の総合計)
第4部 階層問い合わせの機能を模倣
Level擬似列,sys_connect_by_path関数
prior演算子,connect_by_root演算子
order siblings by
connect_by_IsLeaf擬似列
connect by NoCycle
connect_by_IsCycle擬似列
第5部 バックトラック問題
ナップサック問題
数独

第8回 PivotとUnPivot
第1部 PivotとUnPivotとは
PivotとUnPivotとは
select文でのPivotとUnPivotの評価順序
第2部 Pivotの使用例
Pivotの使い方
Pivotの代用法
Pivotと、Pivotの代用法を比較
Pivotのサンプル集
第3部 UnPivotの使用例
UnPivotの使い方
UnPivotの代用法
UnPivotと、UnPivotの代用法を比較
UnPivotのサンプル集
Left Curve
図でイメージする
Oracle DatabaseのSQL全集
Right Curve