반응형
요즘은 xml을 사용하지 않습니다..
하지만 가끔 레거시 시스템 연동 시 xml을 사용할 수 있는 경우가 생기기도 합니다.
아니면 그냥 xml을 좋아해서 일지도 모릅니다.
요즘은 json을 사용합니다.
예전에 naver 메모에 작성해 놓은 내용을 옮겨 작성합니다.
요즘은 xml을 사용하지 않아 요소, 속성이라는 단어를 잘 모르시는 분이 많습니다.
나 또한 예전에 옛날 책을 보고 알았습니다.
xml 요소
<val>요소</val>
xml 요소 조회 쿼리
DECLARE @XML_PARAMETER XML = '<VAL>요소</VAL>'
SELECT
XMLS.S.value('VAL[1]', 'VARCHAR(100)') AS A
FROM @XML_PARAMETER.nodes('/') AS XMLS(S)
xml 속성
<val text="속성"></val>
요소, 속성, 리스트를 쿠리
xml 속성 조회 쿼리
DECLARE @XML_PARAMETER XML = '<VAL TEXT="속성"></VAL>'
SELECT
XMLS.S.value('@TEXT[1]', 'VARCHAR(100)') AS A
FROM @XML_PARAMETER.nodes('/VAL') AS XMLS(S)
xml 리스트 조회 쿼리
DECLARE @XML_PARAMETER XML =
'<LIST>
<LIST>
<ID>1</ID>
<NM>TEST</NM>
<DESC>TEST_DESC</DESC>
</LIST>
<LIST>
<ID>2</ID>
<NM>TEST2</NM>
<DESC>TEST2_DESC</DESC>
</LIST>
</LIST>'
SELECT
XMLS.S.value('ID[1]', 'INT') AS ID,
XMLS.S.value('NM[1]', 'VARCHAR(100)') AS NM,
XMLS.S.value('DESC[1]', 'VARCHAR(255)') AS DES
FROM @XML_PARAMETER.nodes('/LIST/LIST') AS XMLS(S)
xml요소, 속성, 리스트 한 번에 조회 쿼리
DECLARE @XML_PARAMETER XML =
'<list attr1="11" attr2="22" attr3="33" attr4="문자열">
<a>a1</a>
<b>b1</b>
<c>bc</c>
<d>1</d>
<list>
<ID>1</ID>
<NM>Test</NM>
<DESC>Test_DESC</DESC>
</list>
<list>
<ID>2</ID>
<NM>Test2</NM>
<DESC>Test2_DESC</DESC>
</list>
</list>'
SELECT
XMLS.S.value('NM[1]', 'varchar(100)') AS NM,
XMLS.S.value('DESC[1]', 'varchar(255)') AS "DESC"
FROM @XML_PARAMETER.nodes('/list/list') AS XMLS(S)
SELECT
XMLS.S.value('a[1]', 'varchar(100)') AS a,
XMLS.S.value('b[1]', 'varchar(100)') AS b,
XMLS.S.value('c[1]', 'varchar(100)') AS c,
XMLS.S.value('d[1]', 'int') AS d,
XMLS.S.value('@attr1[1]', 'int') AS attr1,
XMLS.S.value('@attr2[1]', 'int') AS attr2,
XMLS.S.value('@attr3[1]', 'int') AS attr3,
XMLS.S.value('@attr4[1]', 'varchar(100)') AS attr4
FROM @XML_PARAMETER.nodes('/list') AS XMLS(S)
쿼리 결과
반응형
'db > mssql' 카테고리의 다른 글
MSSQL 버전 확인 하는 방법 (0) | 2024.12.02 |
---|---|
mssql 테이블 설명 (0) | 2024.08.19 |
mssql 테이블 명세서 쿼리 (0) | 2024.08.19 |
windows mssql on/off 자동 실행 (0) | 2024.06.06 |
mssql server 설치(SQL Server 2022 설치), SSMS 설치 (0) | 2024.04.03 |