我正在尝试检索在 sql server 列中存储为 xml 数据类型的 xml 节点的值。例如我的 xml 列数据是:
<fields>
<field id="StudentName">John Smith</field>
<field id="StudentID">1310021003</field>
<field id="SchoolName">Little Kid Elementary School</field>
</fields>
我想检索 StudentID。当我运行下面的脚本时,我得到空值。
select MyColumnName.value('(/fields/field/@StudentID)[1]', 'varchar(20)') as StudentId from MyTable
[奖金问题] - 如果可能的话,我还想通过 studentid 查询表格,例如:select * from MyTable where MyColumnName.value('(/fields/field/@StudentID)[1]', 'varchar(20)') = '1310021003'