SQL Server의 XML 열에서 데이터에 액세스하는
SQL Server를 사용하면 XML 데이터 유형으로 정의 된 열에 XML 데이터를 저장할 수 있습니다. 이 열에서 특정 데이터를 검색하려면 전문화 된 쿼리가 필요합니다.
이 구조와 함께 "역할"이라는 XML 열이 있다고 가정 해 봅시다 :
Alpha Beta Gamma
선택하다
역할
에서
mytable
어디
roboles.value ( '(/root/rober) [1]', 'varchar (max)') 'stringtosearchfor'
SELECT
Roles
FROM
MyTable
WHERE
Roles.value('(/root/role)[1]', 'varchar(max)') LIKE 'StringToSearchFor'
역할 요소의 값을 추출하여 varchar (max)
로 변환합니다. 이를 통해 특정 역할을 검색 할 수 있습니다.
열이 이미 XML 데이터 유형이 아닌 경우 cast
를 사용하여 쿼리하기 전에 변환합니다.
쿼리는 XML 속성을 대상으로 할 수도 있습니다. 예를 들어, "데이터"열의이 XML을 사용하여 :
선택하다
[데이터]
에서
[dbo]. [CodesyStemCodes_Data]
어디
cast ([data] as xml) .value ( '(/utilities.codesystems.codesystemcodes/@codesystem) [1],'varchar (max) '='2 '
SELECT
[data]
FROM
[dbo].[CodeSystemCodes_data]
WHERE
CAST([data] AS XML).value('(/Utilities.CodeSystems.CodeSystemCodes/@CodeSystem)[1]', 'varchar(max)') = '2'
t-sql 를 사용하여 XML 필드 쿼리
선택하다 *
에서
(
선택하다
pref.value ( '(text ()) [1]' ','varchar (32) '))
에서
mytable
크로스 적용
역할로서 롤리 ( '/root/rober') (pref)
) 결과
어디
'%ga%'
와 같은 rolename
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3