xml 类型的exist 的用法

来源:互联网 发布:2012总决赛数据 编辑:程序博客网 时间:2024/06/05 01:09

http://www.cnblogs.com/stevenshi/archive/2009/12/29/1634838.html

 

 

--创建测试数据库
CREATE DATABASE mytest;
GO

USE mytest;
GO

--创建测试表
CREATE TABLE Users
(
    ID 
INT IDENTITY(1,1),
    UserInfo XML

)

/*****************XML 的 Exist 操作*****************************/    
     
    
---插入测试数据
    DECLARE @xml XML
    
SET @xml='<root>
    <user id="1">
        <userid>001</userid>
        <userName>test1</userName>
        <userName>test2</userName>
    </user>
    <user id="2">
        <userid>002</userid>
        <userName>test1</userName>
        <userName>test2</userName>
    </user>
    </root>
'
    
INSERT INTO Users(UserInfo)VALUES(@xml)
 

--delete Users
--
查询出存在userid=001 的XML,'True' 也可以是1
select * from Users where UserInfo.exist('/root/user[userid="001"]')='True'


--查询出存在user id=1 的XML
select * from Users where UserInfo.exist('/root/user[@id=1]')='True' 

--查询存在userid 节点的XML
select * from Users where UserInfo.exist('/root/user[userid]')='True'

 
--查询不存在userid 节点的XML
select * from Users where UserInfo.exist('/root/user[not(userid)]')='True'

原创粉丝点击