You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL中如何拆分字段内带分隔符的字符串并提取元素作为新列

不同数据库提取section字段第二个元素的实现方案

以下操作默认你的表名为your_table,可根据实际情况替换:

  • MySQL
    先新增output1字段:
    ALTER TABLE your_table ADD COLUMN output1 VARCHAR(255);
    
    再拆分section字段赋值:
    UPDATE your_table 
    SET output1 = SUBSTRING_INDEX(SUBSTRING_INDEX(section, '>', 2), '>', -1);
    
    说明:如果要过滤不足2个分段的记录,可以加WHERE section LIKE '%>%'条件。
  • PostgreSQL
    先新增output1字段:
    ALTER TABLE your_table ADD COLUMN output1 VARCHAR(255);
    
    再拆分赋值:
    UPDATE your_table 
    SET output1 = (string_to_array(section, '>'))[2];
    
  • Oracle
    先新增output1字段:
    ALTER TABLE your_table ADD output1 VARCHAR2(255);
    
    再拆分赋值:
    UPDATE your_table 
    SET output1 = REGEXP_SUBSTR(section, '[^>]+', 1, 2);
    
  • SQL Server 2016及以上版本
    先新增output1字段:
    ALTER TABLE your_table ADD output1 VARCHAR(255);
    
    再拆分赋值:
    UPDATE t
    SET output1 = s.value
    FROM your_table t
    CROSS APPLY (
        SELECT value, ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS rn
        FROM STRING_SPLIT(t.section, '>')
    ) s
    WHERE s.rn = 2;
    

内容的提问来源于stack exchange,提问作者SNT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 20:36:02