查询数据库xml字段的效率问题 请问大家一个问题,像ms sql 2005 和Oracle都支持对xml文件的存储 那么怎么查询数据库中这些xml中某个字段呢 查询的效率如何 ?不知道大家有没有做过类似的工作 谢谢指点! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 例如有CategoryId,CategoryInfo字段 其中CategoryInfo字段的值是一个xml,内容如下:<CategoryInfo> <CategoryName>Beverages</CategoryName> <Description> Soft drinks, coffees, teas, beers, and ales</Description></CategoryInfo>执行下面的查询语句SELECT CategoryInfo.query('CategoryInfo/Description')FROM xml_CategoriesWHERE CategoryID = 1结果如下所示:<Description>Soft drinks, coffees, teas, beers, and ales</Description>这没有问题 但如果数据量达到100万以上 效率如何?大家是否做过类似的工作?还有,上面是通过CategoryID来查xml内容的,那么是否可以通过以xml字段里面的一个属性为条件,例如CategoryName来查满足条件的所有列呢?还没有看见类似的实例 希望大家指点!!谢谢 据说XML的效率都比较低 不如临时表和CTE 用XQUERY查询,100万的话,性能不会太好。。 如果真的这么大数据量的话,最好还是专门写一个外部解析程序现在的DOM库已经很方便了,解析xml 我测试了一下 sql2005 数据库 记录数为一百万,查询一般需要等待10秒左右 只是单表查询 硬件条件:cpu双核 内存2G 大家觉得如果在项目中利用xml查询 是否可以接受 这个效率 经测试,将之前10万条记录的物理表转换为XML,再对应解析XML字段时与之前物理表解析相差3-10秒。XML 效率确实不好,大数据表还是传统物理表比较好 问一个SQL问题 数据库还原问题,出现"内部一致性错误",期待大力邹兄j老师等前辈 更新带有触发器的表,出现不能update现像,如何解决 ftp问题(没发错地方,这里人气旺) 各位老大,怎样将原来的存储过程替换掉!!把它覆盖掉可以吗? 有可能直接把数据库建在可擦写的光盘上吗? 找不到SQL6.5版本 请教:SQL SERVER 7。0安全问题。 如何在MSSQL中实现插入功能时,而数据库不生成日志。 关于SQL2012表的删除提示“语法有问题”的问题(有图) 关于select...not in的问题 关于查询耗时的问题
<CategoryInfo> <CategoryName>Beverages</CategoryName> <Description> Soft drinks, coffees, teas, beers, and ales</Description></CategoryInfo>
执行下面的查询语句
SELECT CategoryInfo.query('CategoryInfo/Description')FROM xml_CategoriesWHERE CategoryID = 1
结果如下所示:<Description>Soft drinks, coffees, teas, beers, and ales</Description>这没有问题 但如果数据量达到100万以上 效率如何?大家是否做过类似的工作?
还有,上面是通过CategoryID来查xml内容的,那么是否可以通过以xml字段里面的一个属性为条件,例如CategoryName来查满足条件的所有列呢?还没有看见类似的实例 希望大家指点!!谢谢
现在的DOM库已经很方便了,解析xml
硬件条件:cpu双核 内存2G
大家觉得如果在项目中利用xml查询 是否可以接受 这个效率
XML 效率确实不好,大数据表还是传统物理表比较好