MySQLでグループ化したものを条件で絞る(HAVING)
2014/05/21
正規化したテーブルがあってその中には
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件以上のものを出力
になるんだろうけど、ちゃんと理解できていないからか
応用が難しそう。グループ化後も絞れる、ということは
覚えておく。
関連記事
-
-
MySQLで全角半角を区別せずに検索する方法(collate utf8_unicode_ci)
あるシステムでMySQLの検索時に「WHERE test_column coll ...
-
-
MySQLでテーブルのカラム名やカラムの型等、詳細情報を取得する方法
MySQLでテーブルのカラム名やカラムの型等、詳細情報を取得する方法をメモ。 & ...
-
-
MySQLにて指定したカラムがNULLもしくは空の場合、あらかじめ決めておいた内容で表示する方法
何らかのフォームとMySQLを組み合わせた際に任意入力の項目はそのカラムがNUL ...
-
-
MySQLでデータがあれば上書き、無ければ挿入する
既存のソースを編集時に「REPLACE INTO~~」 という見たことの無いSQ ...
-
-
MySQLで開始から終了日付内を調べたいとき
等号不等号でもできるけど、BETWEENというのがよさそう。 ■参考サイト ht ...