oracle数据库巧用位移字段(options)
options 位置字段(用整数的二进制来表示多种属性的两种状态)
使用场景:当需要表示一个属性的两种状态(1,0),可以用于多个这样的属性
在oracle数据库中,通过bitand来查询options上某一位上的状态
例如:查询第三位上的状态是否是1,bitand(options,4)如果等4表示第三位是1,否则不是。
要验证哪一位通过是用那一位的2的n-1次方与options进行与运算,如果返回值还是2的n-1方,
则说明状态时1,否则是0
如果要修改某一位上的状态,update options=options+2的n-1,即可修改那一位上的状态
bitand(expres1,expres2),返回expres1和expres2进行与运算的结果
options相当于一个可扩展字段,方便,而且不需要修改数据库结构