16

派生列タスクを使用して、CASEWHENステートメントを使用して列データを変更しています。しかし、私は言うことができる必要があります。

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演算子を使用することは可能ですか?

4

2 に答える 2

28

古い質問だとは思いますが、最近はウェブ上で良い答えを見つけました。

含む の式が必要な場合は、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"

詳細については、次の便利なリソースを参照してください:T-SQLのLIKEに相当する基本的なSSIS

于 2012-09-13T15:10:23.417 に答える
13

FINDSTRING関数を使用することをお勧めします。

FINDSTRING(character_expression、searchstring、occurrence)

..。

character_expressionまたはsearchstringのいずれかがnullの場合、FINDSTRINGはnullを返します。

于 2011-01-19T18:44:09.770 に答える