【问题标题】:How to extract strings between two special characters in TSQL如何在SQL中提取两个特殊字符之间的字符串
【发布时间】:2011-06-17 15:57:41
【问题描述】:

如何编写 TSQL 脚本以从“Email_Monday_Miami_June”中获取“Monday_Miami”

基本上,我想提取第一个和第三个“_”之间的所有内容

谢谢一百万

【问题讨论】:

    标签: tsql substring


    【解决方案1】:
    DECLARE @c varchar(100)
    SET     @c = 'Email_Monday_Miami_June' 
    
    SELECT SUBSTRING(
        @c, 
        CHARINDEX('_', @c) + 1, 
        LEN(@c) - CHARINDEX('_', @c) - CHARINDEX('_', REVERSE(@c))
    )
    

    返回

    Monday_Miami
    

    【讨论】:

      【解决方案2】:
      declare @s varchar(max) = 'Email_Monday_Miami_June'
      
      select parsename(replace(@s, '_', '.'), 3)+'_'+parsename(replace(@s, '_', '.'), 2)
      

      【讨论】:

      • @Tomalak - 谢谢。已经为您的版本 +1。如果超过 4 个单词,两个版本都会失败。
      猜你喜欢
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 2021-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多