2014年10月22日水曜日

SQLでbit演算,合計値格納項目のクエリー方法

DB定義書ではこのような項目がありました

my_field NULL → 1:ああああ 2:いいいい 4:うううう 8:ええええ 16:おおおお (合計値格納)

つまり複数選択可能な列です。
例えば「1:ああああ 2:いいいい」が選択されてDBに登録したらmy_fieldの値は1+2=「3」です。

そうするとクエリーの書き方は:
例えば「8:ええええ」に含まれるレコードを抽出したいときは:

......... where my_field & 8 = 8

でOKです。

0 件のコメント:

コメントを投稿