SELECT LISTAGG(bit) WITHIN GROUP(ORDER BY lv DESC) bin
FROM (SELECT LEVEL lv
, SIGN(BITAND(deci, POWER(2, LEVEL - 1))) bit
FROM (SELECT 7 deci FROM dual)
CONNECT BY POWER(2, LEVEL - 1) <= deci
)
;
by 소연짱
[2013.11.21 18:45:28]
답변 감사드립니다 ㅠㅠ
펑션을 써서 해결했습니다.
L_NUM := I_NUM;
WHILE L_NUM > 1 LOOP
L_BIT := MOD(L_NUM,2);
L_BINARY := TO_CHAR(L_BIT)||L_BINARY;
L_NUM := FLOOR(L_NUM / 2);
END LOOP;
IF L_NUM = 1 THEN
L_BINARY := '1'||L_BINARY;
END IF;
RETURN L_BINARY;
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.