postgresql中有一个 text 类型的列 并有表格中的数据
aa.bbb.cc.dddd
ee.fff.gg.hh.iiii
kk.ffg.hjf
我希望在第一个.
之后将它分成两部分,如下所示:
aa bbb.cc.dddd
ee fff.gg.hh.iiii
kk ffg.hjf
我可以使用哪些查询来执行此操作?
我试过了
SELECT split_part(col_name, '.', 1) AS part1,
split_part(col_name,'.',2) AS part2
from table_name;
但这是将它分成aa和bbb
答案 0 :(得分:1)
您可以使用strpos
查找第一个.
,然后使用substr()
select left(col_name, strpos(col_name, '.') - 1) as part1,
substr(col_name, strpos(col_name, '.') + 1) as part2
from table_name