Oracle中通過逗號分割字符串并轉換成多行
通過逗號對字符串字段進行分割,并返回多行,通過使用regexp_substr()函數實現。
SQL示例:
select regexp_substr(q.nums, '[^,]+', 1, rownum,'i'), names
from (select '1,2,3' nums, '張三' names from dual) q
connect by rownum <= LENGTH(q.nums) - LENGTH(REGEXP_REPLACE(q.nums, ',', '')) + 1;
結果展示:

regexp_substr()函數參數說明
參數1: 待分割字符串
參數2:正則表達式
參數3:起始位置,從第幾個字符開始正則表達式匹配(默認為1)
參數4:標識第幾個匹配組,默認為1
參數5:模式('i'不區分大小寫進行檢索;'c'區分大小寫進行檢索。默認為'c'。)

浙公網安備 33010602011771號