【发布时间】:2023-03-18 18:07:01
【问题描述】:
您好,我在 C++ 中使用 BaseX,但我的查询性能存在问题。我有一个包含许多 Xml 文件的数据库,但例如有一个从 csv 文件导入的 xml 文件,看起来像这样。
<record>
<hsn>0005</hsn>
<tsn>486</tsn>
<factorycode>BMW 3/1</factorycode>
<description>318I</description>
<power>83</power>
<cubiccapacity>1796</cubiccapacity>
<typeapprovaldate>19910701</typeapprovaldate>
<xxx>1</xxx>
<mid>BMW00737</mid>
</record>
我有一个简单的查询语句,它用相同的 hsn 和 tsn 查找每个 mid
for $mid in doc('database')//record
where $mid / hsn = '0005' and $mid / tsn = '404'
return $mid/mid
问题是因为xml文件包含很多记录,所以需要很长时间。
有没有办法优化我的查询或 xml 文件? 我认为属性索引可以工作,但我不知道如何在我的数据库中使用它http://docs.basex.org/wiki/Indexes
【问题讨论】:
-
您是否按照您引用的 Wiki 文章中的说明检查了 Info View 的输出?