{ 2010.12.31 }

PostgreSQL IN句での複数条件指定

    はてなブックマーク - PostgreSQL IN句での複数条件指定
    このエントリーをはてなブックマークに追加

    もういくつも寝ないでお正月です!

    Fusic Advent Calender5回目、最多出場回数を獲得することになりました安元です。
    まだ確認してませんが、年末ジャンボが当たっているはずなので、
    当たったあかつきには来年は車を買いたいと思います!!

    基本的なIN句の利用方法

    SQLでIN句を使用したことはありますか?
    一致させたい条件をカンマ区切りで並べるだけで簡単便利に利用できますね。

    福問い合わせを利用する場合は以下のようになります

    IN句での複数条件指定

    さて、このIN句で複数条件指定できたら便利だと思いませんか?

    日本語で条件を表現すると基本的なINの条件は
    「安元 もしくは 納富 もしくは 浜崎 もしくは 渡辺」となりますね。

    複数条件が指定できるということは
    「安元で男 もしくは 納富で女 もしくは 浜崎で男 もしくは 渡辺で女」
    こんな条件指定ができるのです。

    ではSQLを見てみましょう。
    今回は副問い合わせでの書き方から

    簡単ですね!

    指定したいカラムをカンマ区切りで括弧でくくるだけです。
    副問い合わせの返り値も複数カラムがかえってくるように変更しています。

    注意点は、
    条件となるカラムの並び順と、帰ってくるカラムの並び順をそろえることです。

    では、副問い合わせではなく、値指定の場合はどうなるでしょうか?
    以下のようなSQLになります。

    見れば納得な感じかと思いますが、
    知らないと意外とかけないSQLです。

    利用することは少ないかもしれませんが、
    場合によっては2回に分けなきゃかけないSQLを1つにまとめることもできますので
    覚えておくときっと何かの役に立ちますよ!

    さて、12/1から始まり経営陣まで巻き込みました
    Fusic Advent Calender2010も、この投稿をもって本当にお開き!
    続きはまた来年のお楽しみ!(笑点 5代目円楽風に)

    Fusic技術者はじめ経営陣・営業・事務ともども
    来年も一丸となってがんばって参りますのでよろしくお願いいたします。

    Comments are closed.