是否可以执行“LIKE”? SSIS 表达式中的语句?

发布于 2024-10-12 16:32:45 字数 334 浏览 11 评论 0原文

我正在使用派生列任务来使用 CASE WHEN 语句更改列数据。但是,我需要能够说..

SQL 代码将是:

CASE WHEN Column01 LIKE '%i%' THEN '0' ELSE '1' END


在 SSIS 表达式语言中将是:

[Column01] == "i" ? "0" : "1"  (that's for equals i, not, LIKE %i%.


是否可以使用LIKE 运算符?

I'm using a Derived Column Task to change column data using a CASE WHEN statement. However, I need to be able to say..

SQL CODE WOULD BE:

CASE WHEN Column01 LIKE '%i%' THEN '0' ELSE '1' END


In SSIS Expression Language that would be:

[Column01] == "i" ? "0" : "1"  (that's for equals i, not, LIKE %i%.

Is it possible to use a LIKE operator?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

月亮邮递员 2024-10-19 16:32:45

我知道这是一个老问题,但这些天我在网上找到了一个很好的答案。

如果您想要 包含 like '%value%' 的表达式,您可以使用:

FINDSTRING(col, "value", 1) > 0`

如果您想要 Start with like 的表达式'value%' 你可以使用:

FINDSTRING(col, "value", 1) == 1

最后,如果你想要一个 End with like '%value' 的表达式,你可以使用:

REVERSE(LEFT(REVERSE(col), X))  == "value"

更多细节请看这里有用的资源:基本SSIS 相当于 T-SQL 的 LIKE

I know it is an old question, but these days I found a good answer on web.

If you want a expression for Contains like '%value%' you could use :

FINDSTRING(col, "value", 1) > 0`

If you want a expression for Start with like 'value%' you could use :

FINDSTRING(col, "value", 1) == 1

And finally, if you want a expression for End with like '%value' you could use :

REVERSE(LEFT(REVERSE(col), X))  == "value"

More details look this useful resource : Basic SSIS Equivalents to T-SQL's LIKE

秉烛思 2024-10-19 16:32:45

我相信您会想要使用 FINDSTRING 函数

FINDSTRING(字符表达式、搜索字符串、出现次数)

...

如果字符表达式或搜索字符串,FINDSTRING 将返回 null
为空。

I believe you'll want to use the FINDSTRING function.

FINDSTRING(character_expression, searchstring, occurrence)

...

FINDSTRING returns null if either character_expression or searchstring
are null.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文