-- 以下为 value() 和 query() 的用法
--SELECT * FROM VisioXML WHERE ID=4 SELECT Doc.value('(/ROOT/ROW[1]/ID/text())[1]','int') RootRowID1, -- 第一行 ID 的值,并且转换为 int 类型 Doc.value('(/ROOT/ROW[2]/ID/text())[1]','int') RootRowID2, -- 第二行 ID 的值,并且转换为 int 类型 Doc.value('(/ROOT/ROW[1]/NAME/text())[1]','varchar(20)') RootRowNAME1, -- 第一行 NAME 的值,并且转换为 VARCHAR 类型 Doc.value('(/ROOT/ROW[1]/NAME/@SEX)[1]','varchar(20)') RootRowNAME1SEX, -- 第一行 NAME 中 SEX 属性的值,并且转换为 VARCHAR 类型 Doc.query('/ROOT') Root, --ROOT 下的所有 XML 内容,类型为 XML Doc.query('/ROOT/ROW[1]') RootRow1, --ROOT 下第一行所有的 XML 内容,类型为 XML Doc.query('/ROOT/ROW[2]') RootRow2 --ROOT 下第二行所有的 XML 内容,类型为 XML FROM VisioXML WHERE ID=4 |
-- 以下为 exist() 函数在两种环境下的用法
SELECT |