##初めに(読まなくてもOK)
・投稿の目的:「学び」というより「自戒」です。
・共感してもらえたら嬉しいです(;^ω^)
・結果:起こった問題で、3時間溶かしました。Σ(・□・;)
##状況(読まなくてもOK)
・私の学習状況:PHP学習と同時にSQL触りだして2週間経過
・就職活動の準備の一つとしてMySQLとPHPを使ったポートフォリオを開発中
・ポートフォリオの機能の一つに「全国の音楽フェスについて口コミする機能」を実装済み
##やりたかったこと
口コミ情報が保存されている既存テーブル(reviews)から**「どのフェスに何個口コミがされているか」**を取得したい!
▽既存テーブル(reviews)
| id | fes_name | review |
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
| 1 | Rock'in Japan | So nice!!! |
| 2 | Rock'in Japan | Exciting!! |
| 3 | SWEET LOVE SHOWER | 最高! |
▽取り出したい値
fes_name | review_cnt |
---|---|
Rock'in Japan | 2 |
SWEET LOVE SHOWER | 1 |
##起こったこと
▽当初のSQL記述
SELECT fes_name COUNT (id) AS review_cnt FROM reviews GROUP BY fes_name
▽最終的な記述
SELECT fes_name, COUNT(id) AS review_cnt FROM reviews GROUP BY fes_name
▽結論
①fes_name
とCOUNT
の間に,
がなかった
②COUNT
と(id)
の間に無駄な空白があった
これだけでした。(笑)
6時間の間で、
・「いいね!機能」のようにテーブルを他に作ったり
・fes_nameに対してreview_idの数を数えようとしたり
記述を変えましたが全部上記の間違った書き方をしてたんですね…(´Д`)
##反省(読まなくてもOK)
原因はGoogle検索の1つの記事に執着しすぎて、他の記事を参考にしなかったことですね
(その記事の投稿者さんには修正の依頼をかけています。)
もっと視野を広くせねば、と反省です…
##最後に
「これやりがちだねー」とか
「これやったことあるわー」とか
「音楽フェス好きだから応援したい!」
なんて思って頂けた方は気軽にLGTMいただけるともっと今後も恥ずかしいミスを投稿し続けていこうと思いますので、よろしくお願いしますm(__)m