ベストアンサー Oracleでビット演算はできますか? 2007/07/04 14:08 Oracleではビットごとの論理演算はできるでしょうか? たとえば、 select * from xxx where (flags & 32)=0 というようなことをやりたいのですが、可能でしょうか? みんなの回答 (1) 専門家の回答 質問者が選んだベストアンサー ベストアンサー muyoshid ベストアンサー率72% (230/318) 2007/07/04 22:30 回答No.1 こんにちわ。 > 論理演算はできるでしょうか? 論理積であれば、bitand ファンクションが使えます。 詳細は、SQL リファレンスを確認して下さい。 質問者 お礼 2007/07/04 23:38 ご回答ありがとうございました。 演算子ではなく関数だったんですね。 bitand関数で目的は達成できました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピューターデータベースOracle 関連するQ&A 関係演算子が無効です。 オラクルで作成しているのですが、関係演算子が無効です。と出ます。 どこを修正すればよいでしょうか SELECT * FROM 表, ( SELECT col FROM 表 WHERE col1,col2 > ) WHERE col = MIN(col); ビット演算子 & | ~ ^のビット演算子はどんな場面で使いますか? いまひとつ、ビット演算子が理解できません。 使いこなすには、二進数の表現、16進数の表現にも詳しくないとだめでしょうか? ビット演算子を使わなければならない場面、ビット演算子を使うメリットを教えてください。 お願いします。 SQL文中の論理演算式の優先順位 来週、初級シスアドの試験を受ける者です。 「何を今さら」と思われるかもしれませんが、参考書等に載っていなかったので質問します。 SELECT * FROM 表名 WHERE ○○○ OR △△△ AND □□□ 上記のSQL文でWHERE以下の論理演算式を解いていく場合の優先順位を教えて下さい。 問題集の解法では「△△△と□□□の論理積をだした後に○○○との論理和をだす」とありました。 また、「条件式の中の論理演算式の優先順位に注意しなさい」とありました。 この、優先順位を教えて下さい。よろしくお願いします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム ビット演算子 掲題の件ですが、 ネットを調べていて他の言語のビット演算子は見つけることができたのですが、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(ビットを反転)にするにはどのように書くのでしょうか? ビット演算について ビット演算について質問なんですが、例えば以下の16ビットのデータ(値は変わる)を 0111 1011 1000 0000 を 0000 0001 1101 1110 や 1111 1111 0000 0000 を 0000 0000 1111 1111 上位にあるビットを下位ビットに、下位にあるビットを上位ビットに に逆に入れたいんですが やり方が分からなく質問しました よろしくお願いします ビット演算子について JAVAを現在勉強中なのですが。 ビット演算子のところで悩んでいます。 「~」のビットごとの補数とはいったいどういうものでどういった時に使うのか、 「>>」と「>>>」のシフトの違いがなんなのかよくわかりません。 簡単でいいので教えていただければ嬉しいです。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム ビット演算で00000001と1の頭に0を付ける? https://www.grapecity.com/japan/powernews/column/clang/019/page02.htm ビット演算子 表1にCのビット演算子を掲げておきます。ビット演算とは言っても、扱う値はバイト単位などCの一般的な整数のデータ型です。ビット演算子は、それらの値をビット単位で計算します。 ビットシフト演算(<< >>)~2倍と1/2 例えばunsigned char型の1は、2進数では"00000001"という形のビット列(ビットパターン)になります。これを1桁左にずらす(シフトする)と"00000010"となります。ずらしてあふれた左端の0は消え、空いた右端には0が入ります。 "00000001"は10進数の「1」、"00000010"は10進数の「2」です。つまり、ビット列を左に1桁シフトすると値は2倍になるのです。 ----------------------------------------- 以上ですが、C言語の、ビット演算の解説の抜粋です。ビット演算はまだ覚えたてですが、"00000001"整数1の頭にわざわざ、0を沢山 つける目的は何なのでしょうか!? よろしくお願いします。 アクセスVBAでオラクルにつないだときのSQL記載方法 教えてください。 アクセスのVBAでオラクルにつないで命令を発行しています。 検索がしたいのですが、 stSQL = "select * from DB where AA = '" & n1 & "'" は、うまくいきますが、あいまい検索の場合はどのようにかけばよいでしょうか? stSQL = "select * from DB where AA = '" & n1% & "'"とか、 stSQL = "select * from DB where AA = '" & n1 & "' & "%"" とかはうまくいきません。 そもそも、"や&や'の意味がいまいちわかっていないのですが・・、 どなたかあいまい検索の記載方法をご伝授下さい。 宜しくお願いします。 ビット演算子~について。 質問があるのですがよろしくお願いします。 環境は Windows Home Editon PHP 5.2.0 Apache 2.2.3 です。 PHPのビット演算子、「~」についてなのですが、 http://wisdom.sakura.ne.jp/programming/php/php8.html このページを見ると、~が式のビットを全て反転させる演算子であると書いてあるのですが、 echo ~5; を実行すると、なぜかブラウザに表示されるのは-6です。 10進数の5を2進数に変換すると0101で、それを~演算子を使って反転させると1010なので、ブラウザに表示される数字は10であるべきではないのでしょうか。返り値が-6という負数になってしまうのも何故だか分かりません。 詳しい方いらっしゃいましたら、ご教授頂けると嬉しいです。 よろしくお願いします。 Excelでビット演算子? Excelでビット演算子の 左シフト演算をさせることは でるでしょうか? 0xff<<8 の演算をさせたいのですが 何か関数はあるでしょうか? ビットパターンについて 以下の命題を解説付きで教えていただけると助かります。よろしくお願いします。 A=(0011), B=(0101)のビットパターンに対し、A・A-のビットパターンは(a)になり、A・Bのビットパターンは(b)になる。したがって、 X=A・Aー+ A・B の論理演算結果の真理値表のビットパターンは(c)になる。ただし「・」は論理積演算子、「+」は論理和演算子、A-, B-はおのおのA,Bの否定演算子を表すものとする。 ビット演算子について ビット演算子のことがよく分かりませんので、結果の求め方を教えてください。ちなみに16進数、2進数などは分かります。 〈例〉(1) 0xf0 & 0xaa (2)~0x55 ビット演算子について あるプログラムの中で下記のようなif文の記述を見かけました。 どういう計算をしてif文の判定を行っているのでしょうか。 (1)256を2進数に変換して → 100000000 (2)0x00000004を2進数に変換して → 100 (3)100000000 & 100 のビットAND演算を行う そもそも(3)で100000000 と 100 では桁数が違うけどどうやって両者でビット演算するので しょうか。100を 000000100というように0を補完して計算すればよいのでしょうか。 その場合、100000000 & 000000100 → 000000000(2進数) → 0(10進数) となりif文の中には入らないことになると思います。 if(256 & 0x00000004 != 0) オラクルで外部結合 オラクル8iを使用しています。 テーブルを外部結合する場合のパフォーマンスについてお聞きしたいのですが、 下の二つのSQL文でパフォーマンスは変わってくるのでしょうか? (外部結合記号(+)を=の前後につけた場合) SELECT 項目 FROM テーブル1 A, テーブル2 B WHERE A.項目1 = B.項目1(+); SELECT 項目 FROM テーブル1 A, テーブル2 B WHERE B.項目1(+) = A.項目1; 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター データベース SQL ServerOraclePostgreSQLMySQLNoSQLその他(データベース) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
ご回答ありがとうございました。 演算子ではなく関数だったんですね。 bitand関数で目的は達成できました。