INSTR関数は、指定されたオフセットから始まり、LOBモードでn回目にマッチする位置を返します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供しています。
構文
DBMS_LOB.INSTR (
lob_loc IN BLOB,
pattern IN RAW,
offset IN INTEGER := 1,
nth IN INTEGER := 1)
RETURN INTEGER;
DBMS_LOB.INSTR (
lob_loc IN CLOB CHARACTER SET ANY_CS,
pattern IN VARCHAR2 CHARACTER SET ANY_CS,
offset IN INTEGER := 1,
nth IN INTEGER := 1)
RETURN INTEGER;
パラメータの説明
| パラメータ | 説明 |
|---|---|
| lob_loc | チェック対象のLOBのロケーター。詳細については、DBMS_LOB使用方法を参照してください。 |
| pattern | テストするパターン。このパターンは、BLOB用のRAWバイトと、CLOB用の文字列(VARCHAR)からなる一連です。このパターンの最大容量は16383バイトです。 |
| offset | パターンマッチングが開始されるバイト(BLOB)または文字(CLOB)の絶対オフセット(原点は1)です。 |
| nth | 発生回数。1からカウントします。 |
返り値
| 戻り値 | 説明 |
|---|---|
| INTEGER | マッチングパターンの開始オフセット。バイトまたは文字単位で表されます。パターンが見つからない場合は0を返します。 |
| NULL | 次のいずれかの状況が考えられます:
|
使用方法
VARCHAR バッファの形式(pattern パラメータ)は、CLOB パラメータの形式と一致していなければなりません。入力される LOB パラメータのタイプが CLOB の場合、バッファには CHAR データを含める必要があります。
RAW または VARCHAR パラメータを使用したパターンマッチング演算(例えば INSTR)では、パターンパラメータや部分文字列内で正規表現や特殊なマッチング文字(例えばSQLの LIKE)はサポートされていません。