はじめに
SQLを勉強し始めて、現在は教材サイトの課題を進めている。
そのうえで何点か同じようなミスをしてしまったので再発防止のためにここに残す。
SELECT文のカラム間「,」忘れ
エラーになるので注意
AS句とか絡んでくると切れ目がわかりにくくなったりするよね。
気を付けるしかないな、がんばれ。
WHERE内にAVG,SUM,COUNTは使えないぞ
AVG,SUM,COUNTは文が全処理が完了したのちにようやく使える構文。
ただし、WHEREは1行1行の処理で経由する場所なので、その段階では全処理が完了していないため使用できない。
。。。???
もう少し噛み砕いていうと、グループ化された後でないと使えない
つまり、処理順としてGROUP BYのあとでしか使うことができない関数という理解をする。
FROM句
↓
JOIN句
↓
**WHERE句**
↓
**GROUP BY句**
↓
HAVING句
↓
SELECT句
↓
ORDER BY句
↓
LIMIT句
WHEREってORDER BYの前に読まれるところなのか!なのでNG!
AVG,SUM,COUNTを使いたければ、HAVINGを使うべし。
▼めっちゃわかりやすい参考サイト
スペルミス
まじで多い。構文見直して絶対あってるっていうときは大体これ
bookとbooksとかそういうのが多い。愛を持ってコーディングをしよう。
そうすればミスが減るはず。
定義書の読み込みが甘く内容が理解できていない
当たり前だけど、定義書を読まないとコードなんてかけるわけないでも
「たぶんこれでしょ」「いつものやつでしょ」みたいなコーディングをすると
見当違いのコマンドを書いていたりするので、ちゃんと定義書を読もう。
そしてテーブルの内容やER図もちゃんと見てイメージを構築してからコードを書くべし。