データ
数値型のデータの左側・右側の数値を取得
数値型のデータをRIGHT/LEFT関数を使わずに(文字列型に暗黙的な型変換することなく)、左側・右側の数値を取得する。
SELECT 122020/10000
FROM TABLE
---------------------------------
12
SELECT MOD(022020,10000)
FROM TABLE
---------------------------------
2020
アルファベットの範囲指定
WHERE RETSU < 'A' OR RETSU > 'Z'
桁揃え
数値データの桁を揃える。「1」→「001」等。LPADで可能だが、DIGITSの方が処理が軽い。LPADの場合は0以外の文字充填が可能。
SELECT A, LPAD(A,10,'0'), RPAD(A,10,'*')
FROM TABLE
--Oracle/DB2/PostgreSQLは充填文字が省略可能
---------------------------------
1 0000000001 1********
SELECT KATA, ATAI, DIGITS(ATAI)
FROM TABLE
---------------------------------
INTERGER(6) 1 000001
DECIMAL(6,2) 1.1 000011
DECIMAL(6,2) -1.1 000011
0除算防止
除算の場合、割る側にNULLIF関数を入れる。0で除算を防ぐため。
SELECT A, B, A/NULLIF(B, 0)
FROM TABLE