【问题标题】:Remove the ending parentheses in SQL SSIS variable using expression builder?使用表达式生成器删除 SQL SSIS 变量中的结尾括号?
【发布时间】:2021-12-06 06:59:56
【问题描述】:

在 SSIS 中传递变量,它用于获取/传递查询。问题是传入查询包含“;”括号最后这样));

这导致了如何在 SSIS 中使用表达式构建来删除括号

"SELECT DISTINCT 
col1,
col2,
FROM(
"+
@[User::Query]+")Das"

这是我的尝试:

   "SELECT DISTINCT 
    col1,
    col2,
    FROM(DT_WSTR)REPLACE("+
@[User::Query]+",";",""))Das"

第二个

"SELECT 
Col1,Col2,
FROM(
"+
(DT_WSTR, "20")FINDSTRING( ( @[User::Query]), ";",1 )  == "1" ? RTRIM( @[User::Query]): ( @[User::Query])+")DM"

这可以删除';'但它会删除 ';' 之前的字符还有(SELECT Col1,Col2,FROM)

如何使用表达式生成器自动删除));

【问题讨论】:

    标签: sql sql-server ssis-2012


    【解决方案1】:

    这就是答案

    (DT_WSTR, "20")FINDSTRING( REVERSE( @[User::Query]), ";",1 )  == "1" ?
    "SELECT DISTINCT CHANNEL, TRACK, MODULE, FEATURE FROM("+ SUBSTRING( @[User::Query] , 1,  LEN(@[User::Query])-1) +")DM"
    :
    "SELECT DISTINCT CHANNEL, TRACK, MODULE, FEATURE FROM("+@[User::Query]+")DM"
    

    请发布您的选项

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-27
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 2012-05-22
      • 2018-12-18
      相关资源
      最近更新 更多