第3章 単一行関数およびグループ関数 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3-1 単一行関数 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
■単一行関数を使用し、問い合わせ対象の表やビューの各行に対して、単一の結果行を戻します。
■一般関数
■数値関数:文字列関数は文字を受け取り、文字や数値を戻します。
■文字列関数:文字列関数は文字を受け取り、文字や数値を戻します。
■日付関数:日付関数はOracleの日付を操作します。日付関数はDATEデータ型を戻します。 (日付データでは算術演算子(加算、減算)を使った演算も可能です。)
■変換関数:変換関数は、値のデータ型を別のデータ型に変換します。
■分岐関数:条件に一致した値を戻す。
■その他関数
|
3-2 書式モデル | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
■日付や数値を文字列にするTO_CHAR関数や、文字列を日付に変換するTO_DATE関数では、書式を指定することができる ■日付書式:TO_CHAR(列または値,‘書式’)
■数値書式:TO_CHAR(列または値,‘書式’)
|
3-3 グループ関数 | ||||||||||||||||||
■グループ関数を使用し、行のグループに基づく結果を戻します。 ・グループ関数には、DISTINCTやALLのオプションを指定することができる。
■GROUP BY句の基本構文 SELECT 列名リスト,グループ関数 FROM 表名リスト WHERE 条件式 GROUP BY グループ化する基準 ・GROUP BY句を使用して表内の行をグループ化することができます。 ・SELECT句内に列名を指定した場合はGROUP BY句に同じ列名を指定しなければなりませんが、逆にGROUP BY句に指定した列名はSELECT句に必ずしも指定する必要はありません。 ・WHERE句にグループ関数は使用できません。グループ関数による条件指定をする場合にはHAVING句を使用します。 ・GROUP BY句は必ずWHERE句の後に指定します。 ■HAVING句の基本構文 SELECT 列名リスト,グループ関数 FROM 表名リスト WHERE 条件式 GROUP BY グループ化する基準 HAVING グループ化する条件 ・問い合わせで戻すグループを制限する場合にはHAVING句を使用します。HAVING句の条件を満たすグループのみ戻されます。 ・HAVING句、GROUP BY句はWHERE句の後に、ORDER句は最後に配置します。また、HAVING句はGROUP BY句の前でも後でも配置できます。 ・評価の順番は以下の通りになります。 WHERE句 → GROUP BY句 → HAVING句 |