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

Excel SUBSTITUTE函数对应的Presto SQL等价函数及代码转换需求

Excel SUBSTITUTE函数在Presto SQL中的等价实现

等价函数说明

Excel中的SUBSTITUTE函数在Presto SQL中的直接等价函数是replace(),语法为:

replace(原字符串, 要替换的子串, 替换后的子串)

功能与Excel的SUBSTITUTE完全一致,用于将字符串中指定的子串替换为新内容。

Excel公式转换为Presto SQL

原Excel公式

=CONCAT(SUBSTITUTE(B2,LEFT(B2,11),MID(B2,5,3)&"-"&MID(B2,8,2)&"10-"))

转换后的Presto SQL代码

replace(
    B2,
    substr(B2, 1, 11),
    substr(B2, 5, 3) || '-' || substr(B2, 8, 2) || '10-'
)

代码说明

  • substr(B2, 1, 11):对应Excel的LEFT(B2,11),取字符串前11个字符
  • substr(B2, 5, 3):对应Excel的MID(B2,5,3),从第5位开始取3个字符
  • substr(B2, 8, 2):对应Excel的MID(B2,8,2),从第8位开始取2个字符
  • ||:Presto中用于字符串拼接的运算符,对应Excel的&
  • 整体通过replace完成子串替换,Excel的CONCAT在此场景中可省略,因为replace直接返回拼接后的结果

示例验证

  • 输入字符串:JUNE5000950ABS20MN9G250GRN
  • 执行SQL后输出:500-0910-ABS20MN9G250GRN,与预期结果一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 18:12:34