リファレンスガイド> SQL関数のTDVサポート> 文字関数> INSTR
 
INSTR
INSTR(「文字列内」)関数は、文字列内の文字またはサブ文字列を検索し、その文字列が見つかった場合はその場所の整数を返し、見つからなかった場合はゼロを返します。リテラル文字列、変数、またはテーブル列の最初の引数で、2番目の引数で指定された文字列が検索されます。文字列が文字列内で見つかった場合、その位置は文字列の開始または終了のいずれかを基準にした整数として返されます。
構文
INSTR (string_to_examine, string_to_find[, search_start[, nth_occurrence]])
備考
最初の引数string_to_examineは、リテラル式または一重引用符で囲まれた変数名にすることができます。最初の引数は、tableName.columnName内の値を評価するためのSQLSELECT内の式にすることもできます。データタイプはVARCHARまたは同様のものである必要があります。
2番目の引数string_to_findは、文字列、またはデータタイプがVARCHARの変数である必要があります。
オプションで、search_startを指定して、文字列内の任意の位置から検索を続行できます。
検索がstring_to_examineの末尾から進行する場合、結果は常に0になります。
INSTRがTDVで実行されると、INSTR( ''、 'C')の場合はNULLを返し、INSTR( ''、 'C')の場合は0を返します。一部のデータベースにプッシュされると、INSTR( ''、 'C')はNULLではなく0を返す場合があります。
注:違いはスペース文字です。 C文字は単なる例です。
INSTRは空の文字列をNULLとして扱います。
SUBSTRINGの一致の場所は、左側の最初の文字位置から始まるカウントで報告されます。
INSTR関数を使用して、連結値を解析し、スペースで区切られた名前または単語の間のスペースを識別できます。
先頭の各スペースは1文字としてカウントされます。
注:関連する関数POSITIONも参照してください。
INSTR (' jean_doe', ' ', 2, 1)
 
このサンプルINSTR関数呼び出し(先頭に1つのスペースを含む)は6を返します。
INSTR ('  jean_doe', ' ', 2, 1)
 
このサンプルのINSTR関数呼び出し(先頭に2つのスペースがある)は2を返します。