如何拆分部分数据,但部分数据在SQL中与MySQL,PSQL保持相同



我将name列的一些数据如下:

`select name from temp_test`
name
1    ABCD-你好吗
2    CDEF-我很好
3    IDFASGASD-你好
4    你好

我需要的是所有的中文单词,我们不需要英文单词和'-',但不是所有的值都是用-和英文单词,所以我不能使用下面的SQL,有没有人知道如何实现它?

SELECT split_part(b.name,'-',2) from temp_project a
left join temp_test b
on a.id=b.id and a.time = b.time;

最后,我通过下面的SQL解决了我的问题

SELECT CASE WHEN b.name LIKE '%-%'
THEN SPLIT_PART(b.name, '-', 2)
ELSE b.name END FROM temp_project a
left join temp_test b
on a.id=b.id and a.time = b.time;

最新更新