#記述の順序
1.select 取得する列の指定
2.from テーブルの指定
3.(inner,outer) join 結合処理
4.where 絞り込み条件の指定
5.group by グループ条件の指定
6.having グループ化後の絞り込み条件の指定
7.order by 並び替え条件の指定
8.limit 取得する行数の指定
#実行順序
1.from テーブルの指定
2.(inner,outer) join 結合処理
3.where 絞り込み条件の指定
4.group by グループ条件の指定
5.having グループ化後の絞り込み条件の指定
6.select 取得する列の指定
7.order by 並び替え条件の指定
8.limit 取得する行数の指定
#集約関数
集約関数とは、集計操作を行う際に用いる関数です。代表的な集約関数と使い方は以下。
-- 出力結果:6
select avg(age) from users; /* ユーザーの平均年齢を求める */
-- 出力結果:23.5000
select sum(math + japanese) from users where user_name = 'tani'; /* 谷さんの合計点を求める */
-- 出力結果:188
select max(math) from users; /* 数学の最高点を求める */
-- 出力結果:90
select min(math) from users; /* 数学の最低点を求める */
-- 出力結果:39
#GROUP BY
グループ化を行うときに使用する。特定の場所で集約関数を使用したいときに使用する。基本的には、カラムでグループ化して、その別のカラムに関して集約関数を適用することが多い。
#HAVING
group byで指定した場所を計算した後に、その計算結果に関してwhere句のように条件指定できるのがhaving句。
select user_name, sum(math+japanese)
from users
group by user_name
having sum(math+japanese) >= 180;
#order by
selectで取り出したデータの順番を並び替えることができる。ascで昇順、descで降順になる。
#IN
リスト形式に比較が可能になる
#limit
取得するレコードを制限できる
#date関連
業務において日付や時間に関するデータの取り扱いは重要。
時間・日付関数の代表例は以下。
current_date:現在の日付
current_time:現在の時間
date_format:指定した書式にフォーマット