• ベストアンサー

Oracleでビット演算はできますか?

Oracleではビットごとの論理演算はできるでしょうか? たとえば、 select * from xxx where (flags & 32)=0 というようなことをやりたいのですが、可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ。 > 論理演算はできるでしょうか? 論理積であれば、bitand ファンクションが使えます。 詳細は、SQL リファレンスを確認して下さい。

moritan2
質問者

お礼

ご回答ありがとうございました。 演算子ではなく関数だったんですね。 bitand関数で目的は達成できました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 関係演算子が無効です。

    オラクルで作成しているのですが、関係演算子が無効です。と出ます。 どこを修正すればよいでしょうか SELECT * FROM 表, ( SELECT col FROM 表 WHERE col1,col2 > ) WHERE col = MIN(col);

  • ビット演算子

    & | ~ ^のビット演算子はどんな場面で使いますか? いまひとつ、ビット演算子が理解できません。 使いこなすには、二進数の表現、16進数の表現にも詳しくないとだめでしょうか? ビット演算子を使わなければならない場面、ビット演算子を使うメリットを教えてください。 お願いします。

  • SQL文中の論理演算式の優先順位

    来週、初級シスアドの試験を受ける者です。 「何を今さら」と思われるかもしれませんが、参考書等に載っていなかったので質問します。 SELECT * FROM 表名 WHERE ○○○ OR △△△ AND □□□ 上記のSQL文でWHERE以下の論理演算式を解いていく場合の優先順位を教えて下さい。 問題集の解法では「△△△と□□□の論理積をだした後に○○○との論理和をだす」とありました。 また、「条件式の中の論理演算式の優先順位に注意しなさい」とありました。 この、優先順位を教えて下さい。よろしくお願いします。

  • ビット演算子

    掲題の件ですが、 ネットを調べていて他の言語のビット演算子は見つけることができたのですが、Visual Basicでのビット演算子が見つかりませんでした。 ビットシフトだと A >> 2 A << 2 などとかかれていたのですが、これは使えるのでしょうか? よろしくお願いいたします。

  • oracleの表の各列に対して、

    oracleの表の各列に対して、 不正な文字がないかどうかをチェックする方法として、 select 各列名 from 表名 where文で実施したいのですが、 1文字づつチェックするsql文はどのようにしたら良いでしょうか? 例:abcXXXefg aからgまでをチェックし、XXX部分の不正文字を抽出する。 宜しくお願いします。

  • 論理演算の解き方を教えて下さい。

    Q.「ある数Nから次のデータに論理演算を用いて変換したい。その手順を16進数で記述せよ。但しXは変化させてはならないビットを表す。また、データ長は8ビットとする。」  (1)N→XXXX0XXX  (2)N→X0111001 という問題です。まず問題文の意味からわかりません。よろしくお願いいたします。

  • ビット演算を学びたい

    a &= 2; a |= 2; a ^= 2; a ~= 2; a <<=2; a >>=2; みたいな感じでビット演算が使われているソースを 良く見るのですが、いまいちビット演算で何をしているのかが 分かりません。 参考書などには文字通りビットをいじるような旨のことが書いてあります。 (こちらにも同じようなことが http://www9.plala.or.jp/sgwr-t/c/sec14.html) こういうので何となくは分かるのですが、 実際にこれを何に使えるか、実践ではどのように使うのかが なかなか見えてきません。 このビット演算を私のような者でも実際のプログラムで使いこなせるように なれるようなサイトや書籍の提示、あるいはサンプルのプログラムなどで ご指導いただけたらと思います。

  • 論理演算、ビット演算

    C言語仕様上、真/偽は(Not0/0)であることは理解しています。また、処理順序から、論理演算とビット演算では評価対象の範囲が違うことも知っているつもりです。 その上で質問させていただきます。 お手数ですが、お解りになる方は教えていただけると助かります。 例えば、 i=0,j=0である場合 ( (i == 0) && (j == 0) )は真であると思いますが、 ( (i == 0) & (j == 0) )は規定されているでしょうか。 また、( (i == 0) | (j == 0) )は真となることが(理論上)保証されているように思えますが、問題ないでしょうか。 以上、よろしくお願いいたします。

  • ORACLEのLIKE演算子について

    いつも拝見させて頂いております。 ORACLEのLIKE演算子についての質問です。ある抽出条件 をシステムで作成して、その抽出条件を元にNOTで括って正反対 の抽出条件を作成したいと思っています。しかし抽出条件の中にL IKE演算子が含まれていて、パターンマッチングの抽出条件が存 在する場合にNOTで括って正反対の抽出条件を作成すると、NU LLのデータが含まれなくなってしまい、正しい結果が得られませ ん。LIKE演算子はNOT演算子を付加するとNULLデータは 抽出できないものなのでしょうか。ご存じの方がいらっしゃいまし たらご教授頂けないでしょうか。宜しくお願い致します。 WHERE NOT ( 抽出条件 ) ↑このような感じ

  • ビット演算について

    ビット演算ができないダメグラマーです。 10101010 C言語でバイト値の3ビット目の値が0の時は1に1の時は0(ビットを反転)にするにはどのように書くのでしょうか?