SQL Server의 XML 요소에서 특정 속성을 얻는 방법 :나는 테이블의 컬럼에 다음과 같은 XML과 같은 뭔가를
<?xml version="1.0" encoding="utf-8"?>
<container>
<param name="paramA" value="valueA" />
<param name="paramB" value="valueB" />
...
</container>
내가 TSQL을 통해 XML 밖으로 VALUE (단위 : 십억) 부분을 얻기 위해 노력하고 있어요을
지금까지 올바른 노드를 얻었으나 이제 속성을 가져 오는 방법을 알 수 없습니다.
select xmlCol.query('/container/param[@name="paramB"]') from LogTable
나는 마지막에/@ 값을 추가 할 수 있지만 SQL은 속성이 노드의 일부가되어야한다고 알려줍니다. 하위 노드 속성을 선택하는 데 많은 예제가 있지만 형제 애트리뷰트에는 아무 것도 없습니다 (올바른 용어 인 경우).
도움을 주시면 감사하겠습니다.
감사합니다. 정확히 내가 필요로하는 것. –
내가 인덱스에 따라 읽을 수 있어요 당신의주고 쿼리를 사용하여 같은 분야에서 동적 노드를 가지고있다. 의미 인덱스를 1로 지정하면 2가 표시되고 인덱스 2를 지정하면 5가 표시되지만 두 노드가 모두 필요합니다. 그러니 제발 어떻게 저에게 제안 해주세요. –
pixelbyaj
이 값을 부울로 사용하는 데 문제가 있습니다. 두 번째 매개 변수로 'boolean'및 'System.Boolean'을 사용하여 오류가 발생했습니다. 만약 내가 varchar 않으면 모든 nulls를 반환합니다. 내 xml 줄은 다음과 같이 보입니다 : –
Zac