2014년 11월 6일 목요일

[SQL] 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;

SELECT BIN_TO_NUM (1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1)
FROM DUAL;

댓글 없음:

댓글 쓰기