勉強したことのメモ

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

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

   2014/05/21  MySQL / MariaDB

正規化したテーブルがあってその中には
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 / MariaDB

  関連記事

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

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

MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方
MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方

VPSの各種ファイルを整理している際に「MySQLも不要なデータを削除すればいい ...

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

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

MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法
MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法

他社が作成されたSQL文を見ているとDATE_ADDという使ったことの無い関数が ...

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

MySQLで指定したカラムの中央値を抽出したいというケースがあった。MariaD ...