1、与 and

 oracle自带函数bitand(int,int) 

select bitand(2,4) from dual;

【Oracle】位运算

 2的二进制是0010,4的二进制是0100,与的结果是0

  【Oracle】位运算 

 

2、或 or

 bitor(a,b)=a+b-bitand(a,b)

 建立自定义函数bitor(a,b)

create or replace function bitor(a in int,b in int) 
return int
is 
begin 
return a+b-bitand(a,b);
end;
/
select bitor(2,4) from dual; 

【Oracle】位运算

 2的二进制是0010,4的二进制是0100,或的结果是6

【Oracle】位运算

 

3、异或 xor

 bitxor = a+b -2*bitand(a,b)

 建立自定义函数bitxor(a,b)

create or replace function bitxor(a in int ,b in int)
return int
is
begin
     return a+b-2*bitand(a,b);
end;
/
select bitxor(2,10) from dual;

【Oracle】位运算

  2的二进制是0010,10的二进制是1010,异或的结果是8

 【Oracle】位运算

 

 

参考地址

oracle位运算 : https://blog.csdn.net/xingdavis/article/details/12379385

相关文章:

  • 2021-05-01
  • 2021-04-09
  • 2022-01-31
  • 2021-12-05
猜你喜欢
  • 2022-12-23
  • 2021-10-08
  • 2021-05-18
  • 2021-08-05
  • 2021-08-28
  • 2021-06-18
相关资源
相似解决方案