Oracle研修4:演算子、曖昧検索、集約関数、重複、グループ化、並び替え

演算子

matome_11_12_20

LIKE 文:あいまい検索

(「%」は任意の文字列を指し、「_」は任意の 1 文字を指す)

BETWEEN 文:、範囲の絞り込み

「○○以上△△以下」

IN  文:条件の比較

同じ列に対して値だけを変えて OR 条件としている場合
例:「○○=△△ OR ○○=▲▲ OR ○○=□□」→「○○ IN (△△, ▲▲, □□)」

集約関数

COUNT テーブルのレコード数(行数)を数える
SUM テーブルの数値列のデータ合計(NULLは無視して計算)
AVG テーブルの数値列のデータ平均(NULLは無視して計算)
MAX テーブルの任意の列のデータの最大値を求める
MIN テーブルの任意の列のデータの最小値を求める

*関数の引数に「*」を使用出来るのは、COUNT 関数のみ。
*COUNT()を使いNULL の行を除外して数えたい場合 → 対象とする列を限定して引数に記述。

 

DISTINCT:重複値を除外

重複値を除外して集約関数を使う

*DISTINCT を引数にする → 「最初に列の重複値を除外し、それからその結果の行数を数える」

↑もし引数の外に書くと
例:SELECT DISTINCT 関数(<列名>) FROM <テーブル名>;

「最初に列の行数を数え、それからその結果の重複値を除外する」

GROUP BY 句:グループ分け

*SELECT 句に列の別名指定不可

*集約キーに NULL が含まれていた場合 → 一括して「NULL」という 1 つのグループに分類。
*WHERE 句には集約関数を用いれない → 、GROUP BY 句や SELECT 句よりも先に実行されるため。

HAVING 句:グループに対して条件を指定

ORDER BY 句:結果の並び替え

*SELECT 句に列の別名指定可能

*昇順「ASC」、降順「DESC」
【 複数のソートキーを指定】

【 NULL の順番 】
*「NULLS FIRST」→ NULL が先頭に、「NULLS LAST」→ NULL が最後に表示。

 SELECT 句の実行順序
FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY

関連記事

Oracle研修1:データベースの概要とOracleの特徴、ユーザーと権限

Oracle研修2:SQLのデータ型。テーブルの作成、変更、削除。 列の追加、変更、削除。

Oracle研修3: INSERT 文、SELECT文、UPDATE 文、DELETE文、TRUNCATE 文

Oracle研修5:演算子、結合、ビュー、サブクエリ

Oracle研修6:インデックス, シーケンス, トランザクションとロック , セーブポイント