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

Oracle SQL:拆分含横杠的列并移除拆分结果中的横杠

解决SQL拆分字符串时保留横杠的问题

没问题,我帮你调整一下SQL语句,解决拆分后带横杠的问题:

SELECT 
    INVT_LEV3,
    SUBSTR(INVT_LEV3, 1, INSTR(INVT_LEV3, '-') - 1) AS PO,
    SUBSTR(INVT_LEV3, INSTR(INVT_LEV3, '-') + 1) AS Railcar
FROM C_MVT_H 
WHERE INVT_LEV4 = 'G07K02129/G07K02133'

修改说明:

  • PO列:原语句用INSTR(INVT_LEV3,'-')作为截取长度,会把横杠包含进去。改成INSTR(INVT_LEV3,'-') - 1后,就只截取横杠之前的所有字符,去掉了末尾的横杠。
  • Railcar列:原语句从横杠的位置开始截取,会把横杠包含进去。改成INSTR(INVT_LEV3,'-') + 1后,从横杠的下一个字符开始截取,自然就去掉了开头的横杠。

示例验证:

用你提供的示例数据110799P-FBOX50553测试:

  • PO列结果:110799P
  • Railcar列结果:FBOX50553

完全符合你要的无横杠拆分结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 15:32:45