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にてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法
MySQLにdate型のカラムに誕生年月日が格納されており、そこから干支(十二支 ...
-
-
MySQLで特定のテーブルにパーティショニング設定し高速化を図る方法
以前に他社が設計されたログ系のテーブルを拝見した際にパーティショニング設定が行わ ...
-
-
さくらインターネットでCronからmysqldumpすると0バイトのファイルが生成される
さくらインターネットのレンタルサーバでmysqldumpした結果をファイルとして ...
-
-
MySQLでスレッドの実行状況を表示しスレッドの経過時間チェックや特定スレッドを強制終了する方法
データベースサーバが重たく、原因を調査する機会があった。サーバ自体のメモリやCP ...
-
-
MySQLに保存したデータをJSON形式で取得する方法
MySQLに保存したデータをJSON形式で利用したいということがたまにある(Ja ...