mySQLでgroup byした上でcount()したい

2016/04/12

まどろっこしいコトはいいんだ。

重要なことは「DISTINCT」を使って「group by」は使わないってコトだ。

具体例

言葉でアレコレ説明するのが面倒なので、具体的にメモっていく。

使うテーブル

name taste
鳥精 タレ
鳥精
鳥精 味噌
豚精 タレ
豚精
豚精 味噌
ひな皮 タレ
ひな皮
丸ごとシマウマ タレ
丸ごとシマウマ

欲しい結果

「name」が何種類あるか知りたい。

要は「4」が返ってきてくれたらOK。

間違ったクエリと結果

掲題通りのクエリと求めていなかった結果。

select count(name) from xxx group by name;
count(name)
3
3
2
2

※各nameに紐づくtasteをcountしてるっぽい。

正しいクエリと結果

求めている結果とそのときのクエリ。

select count(DISTINCT name) from xxx;
count(DISTINCT name)
4

▼wikiのほうでもまとめておく。
Mysqlでのカウントや平均関連

新着(ニュース関連以外)

2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい
2017-11-30
Xampp+FuelPHP1.8をサーバーにupしたらエラーになった。