分类:
2008-10-16 19:09:38
两个参数,要默认转化为数值类型整数进行二进制按位与(AND)运算(逻辑上与代表乘,或代表加,,与门,或门,联想到串联和并联,伟大的编码的原理,相当有趣),结果再转化为二进制-10进制,TOAD文档举例了一个数据库的参数,然后分别和2的0次幂, 1次幂,进行运算,其中结果是1, 2, 4 代表不同的含义,这样,再配合DECODE就实现了强大的一个栏位能表明多种意思。
详细参见TOAD 文档和下文:
返回两个数值型数值在按位进行 AND 运算后的结果。
语法
BITAND(nExpression1, nExpression2)
参数
nExpression1, nExpression2
指定按位进行 AND 运算的两个数值。如果 nExpression1 和 nExpression2 为非整数型,那么它们在按位进行 AND 运算之前转换为整数。
返回值类型
数值型
说明
BITAND( ) 将 nExpression1 的每一位同 nExpression2 的相应位进行比较。如果 nExpression1 和 nExpression2 的位都是 1,相应的结果位就是 1;否则相应的结果位是 0。
下表列出对 nExpression1 和 nExpression2 按位进行 AND 运算的结果:
nExpression1 位 nExpression2 位 结果位
0 0 0
0 1 0
1 1 1
1 0 0
bitand( ) 函数示例
x = 5 && 二进制为 0101
y = 6 && 二进制为 0110
? bitand(x,y) && 返回值 4,二进制为 0100