데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

XQuery 사용시 질문 사항

날렵한곰 2020.11.03 16:08 Views : 429

안녕하세요


MSSQL 에서 쿼리 작업중 두가지 문제점이 있어서 질문 드리게 되었습니다. 


첫번째, 계산 수식을 텍스트로 받아 계산된 값을 리턴 받으려고 합니다. 


그래서 아래와 같은 XQuery를 사용하는 쿼리를 사용하려고 하는데


아래와 같이 x.query 에 직접적으로 수식을 넣으면 제대로 동작하는데


변수를 사용하려고 하면 값이 나오지 않고 수식이 그대로 나오네요 ㅠㅠ 


꼭 변수로 사용해야하는데 좋은 방법이 있을까요? 


[직접 수식 입력]

SELECT rs.value('.[1]', 'money')

FROM ( SELECT x.query('(89 div 2) * (3 * 600 + 510)') rs

   FROM (SELECT CONVERT(XML, '') x) a

) t


[변수 사용]

DECLARE @EXPRESSION VARCHAR(100)

SET @EXPRESSION = '(89 div 2) * (3 * 600 + 510)'


SELECT x.query('sql:variable("@EXPRESSION")') rs

   FROM (SELECT CONVERT(XML, '') x) a





두번째, 위와 같은  쿼리에서 산술식에 제곱을 포함하려고 하는데 


ex) 600+(60-(60^2-48^2)^0.5)/2 


XQuery 에는 제곱(^) 산술식을 지원하지 않는다고 하네요 


다른 좋은 방법이 있는지 알려주세요 ㅠㅠ 


고수님들 답변 달아주시면 감사하겠습니다!!

No. Subject Author Date Views
10668 SQL 2000버전을 2016으로 버전업할때 비밀번호 컬럼의 값 변경에 대해서 iticdl 2020.11.20 1406
10667 sql 2014 쿼리 문의 입니다. [1] 민성 2020.11.18 1314
10666 쿼리문 질문 드립니다. [1] One이 2020.11.18 300
10665 SQL2000 -> SQL2019 질문드립니다 [5] 구티 2020.11.17 526
10664 혹시 오라클에서 mssql로 변환할때요 [1] 아싸라비아콜롬비아 2020.11.16 272
10663 sql 쿼리 관련 질문 드립니다. [3] 코딩왕김탁구 2020.11.15 301
10662 일반 문자열을 utf-8 문자열로 변환 함수가 있을까요? [1] 강구다.. 2020.11.13 245
10661 SQL 복합 정렬 문제 도움좀 부탁드립니다. [1] 아들바보 2020.11.10 263
10660 WRITELOG 관련하여 문의 드립니다. [5] 런아웃 2020.11.09 294
10659 특정 테이블 백업 방법 [1] 푸른산 2020.11.05 266
» XQuery 사용시 질문 사항 [2] 날렵한곰 2020.11.03 429
10657 [MSSQL]LIKE 절 관해 질문드립니다. carlospark 2020.10.29 309
10656 쿼리문 하나 질문합니다. [2] 그린슈퍼 2020.10.28 326
10655 선입선출 조회 쿼리 [3] fsffd 2020.10.26 448
10654 sql2008 -> sql2019로 restore 시킨후 호환성(150)에서만 기존 프로시저 에러 발생 이유? [4] 건우아빠 2020.10.23 364
10653 Oracle 행을 열로 변환하는방법... 질문드립니다 김길동 2020.10.22 371
10652 SQL Server 머신러닝 R 쿼리 관련 질문드려요!! ㅠㅠ [2] Mikha 2020.10.21 305
10651 CONVERT 에러 _ 도와주십쇼 [2] 아침고기 2020.10.20 298
10650 [MSSQL] 대량 테이블 조인 - HINT 문의 아침고기 2020.10.20 308
10649 CONVERT 에러 _ 도와주십쇼 아침고기 2020.10.19 270





XE Login