Oracle 21c에 BITOR 함수와 BITXOR 함수가 추가되었습니다. 참고로 이 함수들은 문서화되지 않았습니다.
테스트를 위해 아래와 같이 테이블을 생성하겠습니다.
-- 1
DROP TABLE t1 PURGE;
CREATE TABLE t1 (c1 NUMBER, c2 NUMBER);
INSERT INTO t1 VALUES (1, BIN_TO_NUM (0, 0, 1));
INSERT INTO t1 VALUES (2, BIN_TO_NUM (0, 1, 1));
INSERT INTO t1 VALUES (3, BIN_TO_NUM (1, 1, 1));
COMMIT;
아래는 BITOR 함수를 사용한 결과입니다.
-- 2
SELECT c1, c2, BITOR (c2, 2) AS bo FROM t1;
C1 C2 BO
-- -- --
1 1 3 -- 011
2 3 3 -- 011
3 7 7 -- 111
3 행이 선택되었습니다.
아래는 BITXOR 함수를 사용한 결과입니다.
-- 3
SELECT c1, c2, BITXOR (c2, 2) AS bxo FROM t1;
C1 C2 BXO
-- -- ---
1 1 3 -- 011
2 3 1 -- 001
3 7 5 -- 101
3 행이 선택되었습니다.