首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将所有列作为一行的单一文本进行搜索

将所有列作为一行的单一文本进行搜索
EN

Database Administration用户
提问于 2017-06-05 17:29:02
回答 1查看 11.7K关注 0票数 11

和google或其他搜索框一样,搜索“所有列为单一文本”是一个简单且通用的工具,但我没有设置如何使用tsquery/tsvector工具进行搜索。

如果它是一个扩展的话,那么没有问题:我需要一个扩展,它提供一个带有某种contains(*,text) (相同的* of SELECT *)的全文搜索,而不是连接每个列值。

有时,一种正式的结构化查询语言是过火的,找到正确内容的最简单的方法是执行搜索,就像使用Google或Yahoo (.)这样的搜索引擎一样。JCR-SQL2: SELECT * FROM [nt:base] WHERE CONTAINS([nt:base],'full-text-query') 其他SQL引擎中的Full+text+search示例

EN

回答 1

Database Administration用户

回答已采纳

发布于 2017-06-05 20:46:22

可以将完整的行转换为字符串(文本),然后对结果使用内置的全文搜索

代码语言:javascript
复制
select *
from foo
where to_tsvector(foo::text) @@ to_tsquery('full-text-query');

foo::text使用非文本数据的默认文本表示将该表的所有列连接为一个大字符串。

票数 16
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/175468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档