【问题标题】:Trimming a string in Teradata在 Teradata 中修剪字符串
【发布时间】:2014-09-23 19:22:19
【问题描述】:

我在 Teradata 中有一个表,其中包含特定列“位置”,例如

location
Rockville County, TX 
Green River County, IL
Joliet County, CA
Jones County, FL
.
.
.

我需要做的是去掉县名后面的所有内容,并将列变成类似

location
Rockville
Green River 
Joliet 
Jones

我一直在尝试使用函数 trim like

trim(trailing ' County' from location)

但它不起作用。有什么想法吗?

【问题讨论】:

    标签: teradata trim


    【解决方案1】:

    trim 函数用于删除空格。

    您可以使用indexsubstring 的组合,例如:

    select 
        'Green River County, IL' your_string
        , substring(your_string, 0, index(your_string, 'County')) your_desired_result
    

    index(target_string, string_to_find) 为您提供一个字符串在另一个字符串中的位置

    substring(target_string, start_index, end_index) 允许您拉出字符串的特定部分

    【讨论】:

      【解决方案2】:

      这是标准 SQL 方式:

      substring(location from 0 for position(' County' in location))
      

      在 TD14 中,您还可以使用正则表达式:

      regexp_substr(location, '.*(?= County)')
      

      【讨论】:

      • 谢谢大家。会正确实施。
      猜你喜欢
      • 2012-09-09
      • 1970-01-01
      • 2010-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多