DECLARE @XMLData XML
SET @XMLData = '<ArrayOfAttributeValueDO>
<AttributeValueDO>
<AttributeID>421</AttributeID>
<AttributeValue>100% cotton pre-shrunk drill</AttributeValue>
</AttributeValueDO>
<AttributeValueDO>
<AttributeID>422</AttributeID>
<AttributeValue>190gsm</AttributeValue>
</AttributeValueDO>
<AttributeValueDO>
<AttributeID>1221</AttributeID>
<AttributeValue>Long Sleeve</AttributeValue>
</AttributeValueDO>
<AttributeValueDO>
<AttributeID>1481</AttributeID>
<AttributeValue>No</AttributeValue>
</AttributeValueDO>
</ArrayOfAttributeValueDO>'
を見つけますか?TSQLのXMLは、特定のブロック(複数可)上記の例を考えると
私は種類のこのような構文を期待していますが、実際には「[]」 の間に誤差が生じています、私は422のattributeID
とattributeValue
で任意の<AttributeValueDO>
を取得しようとしていますと、
DECLARE @strAttributeID VARCHAR(1000) = '422'
DECLARE @strAttributeValue VARCHAR(1000) = '190gsm'
SELECT [AttributeValueXML]
FROM [dbo].[tbl_Stock_Master_AttributeValue]
WHERE [AttributeValueXML].exist('(/ArrayOfAttributeValueDO/AttributeValueDO[AttributeID=sql:variable("@strAttributeID") && AttributeValue=sql:variable("@strAttributeValue")])') = 1
'&&'ではなく' and'ですか?また、あなたの質問に表示されている完全なエラーメッセージを含めてください(読みやすくするために引用符を付けてください)。 –