[英]How to cut off strings before 4th occurrence of a character in postgresql?
我知道在很多数据库中,charindex函数可以接受在第三次出现时获取字符,但postgresql中的strpos不接受它。
基本上我需要在第四个空间(包括最后一个空间)之后切割所有东西
如果我有一个像这样的字符串:
FLAT 11, ELMER HOUSE 33-35
如何在'HOUSE'之后将它切成刚才:
FLAT 11, ELMER HOUSE
不,使用left将无法工作,因为这些字符串变化很大。
这是一种方法:
select substring(str || ' ' from '^[^ ]* [^ ]* [^ ]*')
这将查找由空格分隔的字符组(可能为空)。 它适用于str
的第四个空间。
|| ' '
|| ' '
只是要确保字符串上有四个空格。 否则模式将返回NULL
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.