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

Vertica中移除指定下划线分隔段实现值截断的技术需求

在Vertica中移除下划线分隔字符串的第3段和第7段

需求说明

给定以下划线分隔的字符串,需要移除其中的第3段和第7段,保留其余部分并重新拼接成新字符串。示例如下:

  • 输入:source_data_e0025895_pw2_px_77892_xxxx → 输出:source_data_pw2_px_77892
  • 输入:east_match_a569820_kw2_lk_8975_p2585 → 输出:east_match_kw2_lk_8975

解决方案

利用Vertica内置的SPLIT_PART函数拆分字符串,再通过CONCAT_WS函数将需要保留的段重新拼接。

假设待处理字段名为str_col,所在表为your_table,执行以下SQL即可得到截断后的结果:

SELECT
  CONCAT_WS('_',
    SPLIT_PART(str_col, '_', 1),
    SPLIT_PART(str_col, '_', 2),
    SPLIT_PART(str_col, '_', 4),
    SPLIT_PART(str_col, '_', 5),
    SPLIT_PART(str_col, '_', 6)
  ) AS truncated_str
FROM your_table;

函数说明

  • SPLIT_PART(str, delimiter, position):将字符串str按指定分隔符delimiter拆分,返回第position段的内容。
  • CONCAT_WS(delimiter, str1, str2, ...):用指定分隔符delimiter拼接多个字符串,自动忽略NULL值(若某段不存在时不会额外添加分隔符)。

示例验证

对输入字符串source_data_e0025895_pw2_px_77892_xxxx:

  1. 拆分后各段依次为:source、data、e0025895、pw2、px、77892、xxxx
  2. 取第1、2、4、5、6段拼接,最终得到source_data_pw2_px_77892,与预期一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 22:46:02