oracle 按指定分割符分割字段
时间: 2023-08-07 21:08:29 浏览: 116
Oracle对字符串进行分割
在 Oracle 中,可以使用内置函数 `REGEXP_SUBSTR` 来按指定的分割符分割字段。以下是一个示例:
假设有一个表 `employee`,其中包含一个名为 `name` 的列,每个值都是由逗号分隔的姓和名。现在要将姓和名分别显示在不同的列中。可以使用以下查询语句:
```sql
SELECT
REGEXP_SUBSTR(name, '[^,]+', 1, 1) AS last_name,
REGEXP_SUBSTR(name, '[^,]+', 1, 2) AS first_name
FROM employee;
```
`REGEXP_SUBSTR` 函数的第一个参数是要分割的字符串,第二个参数是用于匹配的正则表达式模式,第三个参数是指定要获取的匹配项的出现次数,第四个参数是指定从哪个位置开始搜索。在上面的查询语句中,正则表达式模式 `[^,]+` 匹配任意数量的非逗号字符,因此可以将字符串按逗号分割为两个子字符串。
请注意,如果要使用其他分割符,只需要将正则表达式模式中的逗号替换为所需的分割符即可。
阅读全文