使用oracle查询实现 将某一列字符串 ‘福建省-福州市’ 通过 ‘-’ 分割成两个字段
时间: 2024-09-29 14:03:40 浏览: 29
Oracle 两个逗号分割的字符串,获取交集、差集(sql实现过程解析)
5星 · 资源好评率100%
在Oracle数据库中,你可以使用`REGEXP_SUBSTR`函数结合`CONNECT BY`语句来实现这个需求。假设你想从名为`your_table`的表中某列`province_city`中分割字符串,可以使用如下的SQL查询:
```sql
SELECT
SUBSTR(province_city, 1, INSTR(province_city, '-') - 1) AS province,
LTRIM(RTRIM(SUBSTR(province_city, INSTR(province_city, '-') + 1))) AS city
FROM
your_table
START WITH
province_city LIKE '福建省-福州市%'
CONNECT BY
ADD (SUBSTR(province_city, INSTR(province_city, '-') + 1), 1) = ''
AND
ROWNUM <= 1;
```
这个查询首先查找包含"福建省-福州市"的部分,然后通过`INSTR`函数找到“-”的位置,将字符串分为两部分,分别存储到`province`和`city`字段中。
阅读全文