SQL Server XQuery
declare @xml xml,@count int,
@exist int,
@i int
set @xml = '<a><b></b><c name="sss"></c><d><id>123</id></d></a>'
--获取根节点下的节点个数
set @count = cast(@xml.query('count(*/*)') as varchar(max))
print @count
--判断根节点下是否存在某个节点
set @exist = cast(@xml.query('*/*').exist('b') as varchar(max))
if @exist = 1
print '根节点下存在节点b'
else
print '根节点下不存在节点b'
set @exist = cast(@xml.query('*/*').exist('d/id') as varchar(max))
if @exist = 1
print '根节点下存在节点b下的子节点id'
else
print '根节点下不存在节点b下的子节点id'
--给xquery语句传外部变量值
set @i = 1
while (@i <= @count)
begin
select @xml.query('*/*')
set @i = @i + 1
end
页:
[1]