1

SQLクエリでは、これらのコマンドを実行し、何を試してもNUllを取得し続けます。

DECLARE @x AS XML

SET @x = ' <Data> <Preference>Mail</Preference>   <Comment>Changed Contact Communication Preference due to customer unsubscribed</Comment>  </Data> '


SELECT @x.value('(//Data/@Preference)[0]','varchar(20)') AS Preference

私は何が間違っているのですか?

4

1 に答える 1

1

代わりに次のXPathを使用してください。

SELECT @x.value('(//Data/Preference)[1]','varchar(20)') AS Preference

すべてのXPath配列は1ベースであり、0ベースではないため、[0]何も返されません。

そして第二に、<Preference>これはXML要素であり、属性ではありません。XML属性@Preferenceを選択しようとしています

于 2012-08-23T16:19:38.593 に答える