次の方法で共有


FINDSTRING (SSIS 式)

適用対象:SQL Server Azure Data Factory の SSIS Integration Runtime

文字式内の文字列のうち、指定された文字列が検出された場所を返します。 返される結果は、1 を基点とする検出場所のインデックスです。 文字列パラメーターは文字式に評価され、検出場所を示すパラメーターは整数に評価される必要があります。 文字列が見つからない場合、戻り値は 0 になります。 文字列の検出回数が、引数によって指定された数より少ない場合の戻り値は 0 です。

構文

  
FINDSTRING(character_expression, searchstring, occurrence)  

引数

character_expression
検索対象が含まれる文字列です。

searchstring
検索する文字列です。

occurrence
何回目に検出した searchstring の場所をレポートするかを指定する、符号付きまたは符号なし整数です。

戻り値の型

DT_I4

注釈

FINDSTRING は DT_WSTR データ型でのみ機能します。 character_expression および searchstring 引数が DT_STR データ型の文字列リテラルまたはデータ列である場合は、FINDSTRING による演算の実行前に、暗黙的に DT_WSTR データ型にキャストされます。 その他のデータ型は、明示的に DT_WSTR データ型にキャストされる必要があります。 詳しくは、「Integration Services のデータ型」および「Cast (SSIS 式)」をご覧ください。

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

1 回目に検出された場所のインデックスを取得するには、 occurrence 引数の値に 1 を使用します。2 回目以降の検出場所のインデックスを取得する場合も同様です。

occurrence には、0 より大きい整数値を指定してください。

式の例

この例では、文字列リテラルを使用します。 値 11 が返されます。

FINDSTRING("New York, NY, NY", "NY", 1)   

この例では、文字列リテラルを使用します。 文字列 "NY" は 2 回しか検出されないため、返される結果は 0 です。

FINDSTRING("New York, NY, NY", "NY", 3)   

この例では、 Name 列を使用します。 Name 列にある 2 番目の n の場所が返されます。 返される結果は、 Nameの値によって異なります。 Name に Anderson が含まれる場合は、次の関数では 8 が返されます。

FINDSTRING(Name, "n", 2)   

この例では、 Name および Size 列を使用します。 Name 列にある Size の値の左端の文字の場所が返されます。 返される結果は、列の値によって異なります。 Name の値が Mountain,500Red,42 で Size の値が 42 の場合、17 が返されます。

FINDSTRING(Name,Size,1)   

関連項目

REPLACE (SSIS 式)
関数 (SSIS 式)