728x90
10진수를 2진수로
SQL>
SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(bit, ',')), ',') bin
FROM (
SELECT COUNT(*) OVER() - LEVEL + 1 level#,
DECODE(TRUNC(deci / POWER (2, LEVEL)), ROUND(deci / POWER (2, LEVEL)), 0, 1) bit
FROM (
SELECT 7 deci
FROM DUAL
)
CONNECT BY POWER(2, LEVEL - 1) <= deci
)
START WITH level# = 1
CONNECT BY PRIOR level# = level# - 1;
BIN
--------------------------------------------------------------------------------
111
2진수를 10진수로
SQL>
SELECT BIN_TO_NUM(1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1) dec
FROM DUAL;
DEC
----------
12345
'Oracle > DB' 카테고리의 다른 글
[Tuning] Oracle Tuning (0) | 2016.08.09 |
---|---|
[Database] LOCK 문제를 일으키는 SQL 명령 찾기 (0) | 2016.08.09 |
[Tuning] statspack 분석 방법 (0) | 2016.08.09 |
[Database] srvctl commands for 10g RAC and 11g R2 RAC (0) | 2014.12.16 |
[SQL] Oracle Built-in Function (0) | 2014.11.10 |