Oracle 中设置位的值函数SETBIT(原创)

来源:互联网 发布:kindle导入电子书 mac 编辑:程序博客网 时间:2024/05/16 10:03

--oracle 自带位与函数BITAND。但是大家可能需要的是设置某位为1或0。

--我做了一个提供给大家。欢迎使用。

--OCOCO 2008.11.28

 

CREATE OR REPLACE FUNCTION SETBIT(VAL NUMBER, BITPOS IN NUMBER, BITVAL IN NUMBER) RETURN NUMBER IS
  RESULT NUMBER;
BEGIN
  RESULT := BITAND((255 + BITPOS) - BITAND(255, BITPOS) * 2, VAL)+BITVAL*BITPOS;
  RETURN(RESULT);
END SETBIT;

原创粉丝点击