发布网友 发布时间:2022-04-21 17:40
共3个回答
懂视网 时间:2022-04-09 20:40
今天因为要处理曾经的一个Bug产生的数据库字段内容冗余的问题,需要用到截取函数。
在网上翻阅了一下,找到了这个字符串函数POSITION。
POSITION(substr IN str) is a synonym for LOCATE(substr,str).
下面是官方文档的地址
https://www.postgresql.org/docs/9.3/static/functions-string.html
用的时候,是想去掉字段里的下划线。用过SQL的都知道,下划线是表示一个占位符的,如果想查找下划线,是需要进行转义的。
不过在POSITION的substr这个参数位时,不需要转义。让我惊奇了一下。
这个substr应该必须是明确的一个字符串,不能有任何占位符呢。学到了!
PostgreSQL字符串函数——POSITION
标签:synonym 产生 ring substr ons 字符串 https static 划线
热心网友 时间:2022-04-09 17:48
可以用函数实现, 如下:
create or replace function get_txt_count(p_source_txt character varying, p_count_txt character varying)调用:
select get_txt_count('a.b.c.d.e', '.');热心网友 时间:2022-04-09 19:06
postgres=# select length('a.b.c.d.e') - length(replace('a.b.c.d.e','.',''));
?column?
----------
4
(1 row)