PostgreSQL 判断字符串包含
warning:
这篇文章距离上次修改已过420天,其中的内容可能已经有所变动。
在PostgreSQL中,可以使用LIKE,ILIKE,POSITION,CONTAINS或LIKE操作符来判断一个字符串是否包含另一个字符串。
- 使用
LIKE或ILIKE:
LIKE是大小写敏感的,而ILIKE是大小写不敏感的。
SELECT * FROM table_name WHERE column_name LIKE '%search_string%';或者
SELECT * FROM table_name WHERE column_name ILIKE '%search_string%';- 使用
POSITION函数:
POSITION(substring IN string)返回子串在字符串中第一次出现的位置,如果没有找到,返回0。
SELECT * FROM table_name WHERE POSITION('search_string' IN column_name) > 0;- 使用
CONTAINS函数(需要使用自然语言处理模块pg_trgm):
SELECT * FROM table_name WHERE CONTAINS(column_name, 'search_string');注意:在使用CONTAINS函数之前,你需要安装并启用pg_trgm模块。
- 使用
LIKE或ILIKE与ANY或ALL(用于匹配多个子串):
SELECT * FROM table_name WHERE column_name LIKE ANY ('{%search_string1,search_string2%}');以上是判断字符串是否包含的常用方法,你可以根据实际需求选择合适的方法。
评论已关闭