我有一个要求,我希望 XML 标记在我的 xml 查询中不区分大小写。
例如:
DECLARE @myTable TABLE ( yourXML XML )
INSERT INTO @myTable SELECT '<z><a><b>1</b><c>2</c></a></z>'
INSERT INTO @myTable SELECT '<Z><A><b>1</b><c>2</c></A></Z>'
SELECT * FROM @myTable WHERE ( [yourXML].exist('for $x in /z/a where ( ($x/b[1]) = 1 ) return $x')>0 )
返回输出为
yourXML
<z><a><b>1</b><c>2</c></a></z>
但我希望在不考虑 XML 标记大小写的情况下显示输出。所以我想要的输出应该是
yourXML
<z><a><b>1</b><c>2</c></a></z>
<Z><A><b>1</b><c>2</c></A></Z>
怎么做?
将谓词与这样的名称测试一起使用,而不是“简单”的节点步骤:
比 FLWOR 版本简单一些。
死灵术。
如果您在这里寻找不区分大小写的 XML 节点函数的解决方案,那么 XPath 就是这样: