계산식이 데이터로 존재하는데 1 4 831

by 김재한 [2016.11.07 22:30:38]


(10 * 5) / 2

​다음같은 계산식이 데이터로 존재합니다.
이걸 쿼리를 써서 값을 구할 수가 없을까요? ​값은 25가 나오면 되는데.

​단, 동적쿼리로 함수나 프로시저를 만들어서 call 하면 안되고 오로지 쿼리로만 값을 구해야합니다.
select (10 * 5) / 2​ dual; 이러면 값이 나오는지만  이계산식이 데이터로 존재해서 문제입니다.ㅜ

 

 

by 우리집아찌 [2016.11.08 07:56:28]
WITH test AS
(
SELECT '3 4' col FROM DUAL
)
SELECT TO_NUMBER ( dbms_xmlgen.getxmltype ( 'SELECT ' || col || ' a FROM DUAL' ).extract('//text()') ) cal
FROM test a

by jkson [2016.11.08 07:58:01]

헐 한발 늦었네요 ㅋ


by jkson [2016.11.08 07:57:36]

WITH T AS
(SELECT '(10 * 5) / 2' FORMULA FROM DUAL)
SELECT TO_NUMBER ( DBMS_XMLGEN.GETXMLTYPE ( 'select '|| FORMULA ||' from dual').EXTRACT( '//text()' )) VAL
FROM T


by 손님 [2016.11.08 08:26:26]
두분 너무감사합니다. 도움이 많이됐습니다 ㅎㅎ
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입