新卒から文系エンジニア→人材業界に転職した人のブログ

新卒から文系エンジニア→人材業界に転職。技術・スキルがないためブログを通して勉強。その後、IT業界の業界知識が活かせる人材業界へ。異業種×異職種の転職経験有り。

このエントリーをはてなブックマークに追加

【SQL入門】単一関数まとめ~数値関数と日付関数編~

【今回の紹介】


仕事の都合で「oraclesql基礎」を取得することになったのでその学習メモを載せまーす


ちなみにインプットはこの書籍
【オラクル認定資格試験対策書】ORACLE MASTER Bronze[12c SQL基礎](試験番号:1Z0-061)完全詳解+精選問題集(オラクルマスタースタディガイド)
【オラクル認定資格試験対策書】ORACLE MASTER Bronze[12c SQL基礎](試験番号:1Z0-061)完全詳解+精選問題集(オラクルマスタースタディガイド)




【内容】

SQL関数には多く分けて2つある

 ①単一関数
対象のレコード分処理結果を返す

 ②グループ関数
  複数のレコードに対し一つの結果を返す。
  

その中でも今回まとめたのは、単一関数の中の一つである日付関数と数値関数について

■単一関数

①数値関数


   (1)ROUND:小数点の切り上げ
    ROUND(列名,m)
  
   (2)TRUNCK:小数点の切り下げ
    TRUNCK(列名,m)
  
   (3)MOD:指定した数字の余りを返す(m÷nの余りを返す)
    MDD(m,n)
 

②日付関数

 
   (1)日付の加算・減算
    select 列名(日付型)+30
    select 列名(日付型)+30
    select SYSDATE-列名(日付型)
 
    ※日付型同士の計算は経過した時間が返される
     「日」の部分に関して計算がおこなわれる
   
(2)時間数の加算・減算
    select 列名(日付型)+30/24
    select 列名(日付型)+30/24
    ※「日」の部分に関して計算がおこなわれる
  
 (3)MONTH_BETWEEN:指定した2つの日付間の月数を返す
    MONTH_BETWEEN(列名,列名)
  
 (4)ADD_MONTHS:指定した日付のnヶ月後を返す
    ADD_MONTHS(列名,n)
    ※もし列名に入る値が月の最終日でだった場合、
     nヶ月後の月の最終日を返す
  
 (5)NEXT_DAY:指定した日付の次のm曜日の日付を返す
    NEXT_DAY(列名,'曜日')
  
 (6)LAST_DAY:指定した日付の前のm曜日の日付を返す
    LAST_DAY(列名,'曜日')
  
  
  ※日付関数に関するメモ
 
   a.英語環境では(日-月―年)表示⇒日本では(年-月-日)

   b.日付の乗算・割算はできない

   c.日付同士の加算はできない(日付にある数値を加算は可能)

   d.日付同士の減算は可能
  

.hatena-module:nth-of-type(10) { background: transparent; } .hatena-module:nth-of-type(10) .hatena-module-title{ display: none; } .hatena-module:nth-of-type(10) .hatena-module-body { padding: 0; }