10年戦えるデータ分析入門

5章 関数で自由自在に新しいカラムを作り出す

5.1 数値の演算

演算は列全体に影響する、特定の行指定するのであればCASE句を使用する
型のキャストはCAST(col)

5.2 文字列の演算

関数には集約関数とスカラー関数がある
集約関数は列全体に対して演算するが、スカラー関数は
列のなかの1つ1つに対して演算する
よく使用される文字列処理の演算子と関数
a || b 文字列連結
char_length(str)
substring(str,begin,end) 文字列の切り出し
trim(str) トリム
split_oart(str,delim,nth) スプリット

5.3 日付と時刻の演算

時刻のリテラル
date '2018-6-16'
timestamp '2018-6-16 12:23:00'

主な演算子と関数
current_date
current_timestamp
date + n n日後の日付
date - n n日前の日付
date1 - date2 差(日数)
extract(year from date '2016-6-16') 日付や時刻の特定の部分を取り出す
date_trunc('month' date '2016-6-16') 日付や時刻を特定の部分まで切り詰める
interval型
interval '1 year'
interval '11 month'
interval '11 week'
interval '00:00:15' 15秒

5.4 計算した値を使って集計する

as句
列に名前をつける、計算したできた新しい列に名前をつけるなど