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

Split Text SQL - 拆分单元格:提取colval列首个|前的数字

提取colval列第一个|前的数字内容

针对不同数据库,提供以下实现方案:

MySQL/MariaDB

利用SUBSTRING_INDEX截取第一个|前的内容,再通过REGEXP_SUBSTR确保提取纯数字:

SELECT 
  colval,
  SUBSTRING_INDEX(colval, '|', 1) AS first_segment,
  REGEXP_SUBSTR(SUBSTRING_INDEX(colval, '|', 1), '[0-9]+') AS target_digits
FROM your_table;
  • 如果第一个|前的内容本身就是纯数字,直接使用SUBSTRING_INDEX(colval, '|', 1)即可得到结果。

SQL Server

通过CHARINDEX定位|的位置,结合LEFT和PATINDEX提取数字:

SELECT 
  colval,
  LEFT(colval, CHARINDEX('|', colval) - 1) AS first_segment,
  SUBSTRING(colval, PATINDEX('%[0-9]%', colval), CHARINDEX('|', colval) - PATINDEX('%[0-9]%', colval)) AS target_digits
FROM your_table
WHERE CHARINDEX('|', colval) > 0;
  • WHERE条件用于过滤不含|的行,可根据实际需求调整。

PostgreSQL

使用SPLIT_PART拆分字段,再用SUBSTRING匹配数字:

SELECT 
  colval,
  SPLIT_PART(colval, '|', 1) AS first_segment,
  SUBSTRING(SPLIT_PART(colval, '|', 1) FROM '[0-9]+') AS target_digits
FROM your_table;

额外说明

  • 若字段中不存在|符号,可根据需求选择保留原内容或过滤行,例如添加WHERE colval LIKE '%|%'。
  • 若第一个|前的内容无多余非数字字符,可省略正则提取步骤,直接使用拆分后的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 20:05:07