SQL 自分用まとめ

DESTINCT

SELECT DISTINCT 入金額
FROM 家計簿

みたいにDISTINCTは列名を指定して使う

SELECT DISTINCT 入金額, 費目
FROM 家計簿

 みたいに2つ列を指定するとこの2つが同じだったら取り除かれるようになる。
selectされた列にDESTINCTされるイメージをもつ。

ORDER BY

SELECT * FROM 家計簿
ORDER BY 入金額 DESC, 出金額 DESC
見たいに最後に使う。
order by に2つの列を指定すると1つ目の列でソートされた後に
その1つ目の列が同じあたいのものに関しては2つ目の列でソートされる。

UNION

共通のカラムをもつテーブル2つを繋げる
SELECT 費目, 入金額, 出金額 FROM 家計簿
 UNION
SELECT 費目, 入金額, 出金額 FROM 家計簿アーカイブ
UNIONにORDER使うときは列番号指定でソートした方が良い。
列名で指定する場合は1つ目のselect文のものを指定する。

集計関数

集計関数は基本的にselect文の中でしようする。 sum max min avg count DBの種類によって違うが基本的にこの5種類 集計関数は集計の対象となった全ての行に対して1回だけ計算を行う。 よって結果表は必ず一行になる。 count()とcount(列名)の違いはが全ての行を数えるのに対し、(列名)はnullの行を 無視してカウントする。 覚えておくテク 重複を除いたcount SELECT COUNT(DISTINCT 費目) FROM 家計簿