関数:SQLでデータに対して何らかの操作や計算を行なうときに使う道具
上記のような集計用の関数を「集約関数」や「集合関数」と呼ぶ。
全部の行を数えてみます。()
の中がCOUNT関数の引数(パラメータ)にあたる。ここでは全てを列を意味する*
を使っている。
postgres=# SELECT COUNT(*)
postgres-# FROM Shohin;
count
-------
8
(1 row)
shiire_tankaの列にはNULLがある。NULLの行はカウントされない。なのでNULLを除外して行数を数えることができる。
postgres=# SELECT COUNT(shiire_tanka)
FROM Shohin;
count
-------
6
(1 row)
COUNT関数は引数によって動作が異なる。COUNT(*)
はNULLを含む行数を、COUNT(<列名>)
はその列に含まれるNULLを除外した行数を数える。
アスタリスクを引数にとる使い方はできない。販売単価の合計値を求めてみる。