我有一个包含3个表的组合的postgresql View :
create view search_view as
select u.first_name, u.last_name, a.notes, a.summary, a.search_index
from user as u, assessor as a, connector as c
where a.connector_id = c.id and c.user_id = u.id;
但是,我需要将3个表中的2个的tsvector字段连接到 View 中的单个tsvector字段中,该 View 可跨4个字段提供全文搜索:2个来自一个表,2个来自另一个表。
我已经阅读了说明可以使用concat运算符组合两个tsvector字段的文档,但是我不确定这在语法上看起来是什么样,以及该实现是否存在潜在问题。
我正在寻找示例代码,这些代码将来自单独表的两个tsvector字段合并为一个 View ,并且还说明了这在Postgresql领域中是好是坏。
最佳答案
我想知道同样的事情。我不认为我们应该像这样从多个表中组合tsvector。最好的解决方案是:
至少这是我的方法。我已经进行了大量的阅读,发现人们并没有将多个表中的数据合并到tsvector中。实际上,我认为这是不可能的,创建tsvector时只能使用当前表的列。
关于sql - 将源自不同表的两个postgresql tsvector字段连接到单个postgresql View 中,以启用合并的全文本搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22639883/