YM0731
5/22/2019 - 12:00 PM

SQL関数など

・DAYOFWEEK()

引数に日付を渡して1~7の数字を返してくれる。case when DAYOFWEEK(dt) = 1 then などで曜日を割り出せる。 1が日曜日、7が土曜


・concat(a,b)

aとbをつなげて表示する。

・concat_ws("a", b, c)

bとcのaを間に入れて連結させる


・substring(abcd,2)

第一引数を第二引数以降の文字を出力する

・locate(aaba, b)

第一引数の文字から第二引数が何文字目かを返す

・len(a)

引数の文字数を返す

・left(a, 3),right(a, 2)

第一引数の文字を第二引数の数で左右に区切る


・elt(a,b,c)

aの数値から第二引数以降のどれを返すか決める aが2の場合はc,1no場合はb

elt(floor(1 + rand() * 10), a, b, c…) 1~10の数をランダムに出力してその結果から文字をランダムに出力する


・replace('aaaab',b,'')

第一引数の文字を第二引数を第三引数に置き換えた文字を表示


floor(15)TRUNCATE(15.56 ,0 )round(10.999,2))mod(123, 10)
切り捨て切り捨て四捨五入余り
15。引数が-15の場合は-16が返される15。引数が-15の場合は-15が返されるこの場合小数第三位を四捨五入余り

・with rollup

小計を出してくれる。

select

category, sum(amount)

from sqlrecipe.sales

group by category with rollup

カテゴリの商品ごとの小計

select

category, product, sum(amount)

from sqlrecipe.sales

group by category, product with rollup