在 PostgreSQL 列中搜索子字符串
Posted
技术标签:
【中文标题】在 PostgreSQL 列中搜索子字符串【英文标题】:Search PostgreSQL column for substring 【发布时间】:2019-09-11 16:15:49 【问题描述】:我有一个数据库列,其中包含这样的条目:
“56/45/34” “78/34/145” “45” ""(即 NULL)我想搜索与某个数字匹配的行 - 例如,“45”应该返回第一行和第三行,而不是第二行。
【问题讨论】:
【参考方案1】:我们可以在这里尝试使用带有单词边界的正则表达式方法:
select col
from your_table
where col ~* '\y45\y';
Demo
【讨论】:
【参考方案2】:您可以将分隔的字符串转换为数组,然后对数组进行测试
select *
from the_table
where '45' = any(string_to_array(the_column, '/'))
【讨论】:
以上是关于在 PostgreSQL 列中搜索子字符串的主要内容,如果未能解决你的问题,请参考以下文章