gpt4 book ai didi

PostgreSql XML 文本搜索

转载 作者:行者123 更新时间:2023-11-29 12:06:53 25 4
gpt4 key购买 nike

我在表格中有一个文本列。我们将 XML 存储在此列中。现在我想搜索标签和值

示例数据:

<bank>
<name>Citi Bank</name>
.....
.....
/<bank>

我想运行以下查询:

select * from xxxx where to_tsvector('english',xml_column) @@ to_tsquery(' <name>Citi Bank</name> ')

这很好用,但它也适用于像 name1 或没有标签这样的标签。

我必须如何设置我的搜索才能使其正常工作,以便我获得标签和值的精确匹配?

最佳答案

你可以像这样使用xpath函数

select *
from xxx
where xpath(xml_column, 'bank/name/text()') = 'CitiBank';

但它不会使用全文搜索索引。您可以使用子查询来查找可能的匹配项并避免完全扫描,并使用 xpath 表达式来获得正确的答案,或者如果查询将始终相同则创建函数索引。

关于PostgreSql XML 文本搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2453396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com