我有一个xml数组。当使用select时它只返回第一个值。这是我的代码。我的代码出了什么问题。
DECLARE @xml xml;
SET @xml =N'<root>
<Id>68890</Id>
<Id>68900</Id>
</root>';
SELECT
replicateIdXml.replicateIds.value('Id[1]','bigint') as id
FROM @xml.nodes('/root') AS replicateIdXml (replicateIds)
它只返回第一行。
答案 0 :(得分:2)
你非常接近。您的(gdb) b main
Breakpoint 1 at 0x80483b7: file f.c, line 3.
(gdb) r
Starting program: /root/work/f
Breakpoint 1, main () at f.c:3
3 __asm__("jmp L\n"
(gdb) n
Program received signal SIGSEGV, Segmentation fault.
0x080483ba in main () at f.c:3
3 __asm__("jmp L\n"
(gdb) n
Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb)
会返回第一级行的所有.nodes()
元素。但是只有一个root
- 元素...比你选择第一个root
- 元素,这是你看到的元素。
您必须让Id
按顺序返回所有.nodes()
- 元素:
Id