勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLでグループ化したものを条件で絞る(HAVING)

   2014/05/21  MySQL

正規化したテーブルがあってその中には
idとtagのカラムがある。

でtagの方でアンド検索したい場合に
途方にくれて上司に教えてもらったのでメモ。

■ソース
SELECT id
FROM test_table
WHERE tag IN (1,5)
GROUP BY id
HAVING COUNT(id) >= 2

■その他
グループ化したものを条件で絞るといったものみたい。

tagに1か5が入っているidを検索⇒idでグループ化しつつ、
idの件数が2件以上のものを出力

になるんだろうけど、ちゃんと理解できていないからか
応用が難しそう。グループ化後も絞れる、ということは
覚えておく。

■参考サイト
http://www3441ui.sakura.ne.jp/wordpress/?p=319

 - MySQL

  関連記事

MySQLでカラム内容によって条件分岐させたい場合の対応方法
MySQLでカラム内容によって条件分岐させたい場合の対応方法

MySQLでカラムの内容によって条件を分岐させたかった。またPHPで処理するので ...

MySQLでdatetime型にもインデックスを使用して高速化を図る方法
MySQLでdatetime型にもインデックスを使用して高速化を図る方法

ログ関連のデータを格納するテーブルがあり、集計を行う際に非常に時間がかかった。レ ...

mysqlで正規化できない時はシリアライズ使う
mysqlで正規化できない時はシリアライズ使う

アンケートか何かに機能追加している際、配列を カンマ区切りで結合して文字列でDB ...

MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法
MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法

MySQLにdate型のカラムに誕生年月日が格納されており、そこから干支(十二支 ...

MySQLで指定したカラムの最頻値を抽出する方法
MySQLで指定したカラムの最頻値を抽出する方法

MySQLで指定したカラムの最頻値(全データの中で最も多く出現する値)を抽出した ...