我有一个带有xml列的表。Xml类似于
<Root>
<Row>
<user>abc</user>
<Rowid>1</Rowid>
</Row>
<Row>
<user>vf</user>
<Rowid>2</Rowid>
</Row>
<Row>
<user>ert</user>
<Rowid>3</Rowid>
</Row>
<Maxrowid>3</Maxrowid>
</Root>
现在下面的查询返回sl_no列和myxmlcolumn行包含节点``user''()中具有值``abc''或``xyz''的xml列。查询以下我正在使用类似于sql的IN选项。
SELECT
[mytable].[Sl_no],
[mytable].[myxmlcolumn]
FROM [mydb].dbo.[mytable]
WHERE
[myxmlcolumn].exist('for $x in /Root/Row where (($x/user[fn:upper-case(.)=(''ABC'',''XYZ'')])) return $x') > 0
我想要类似的查询,其功能与sql'NOT IN'相同。在我的情况下,我希望在xml列的节点“ user”()中不具有值“ abc”或“ xyz”的行。所以请帮我。