2017-10-20 9 views
1

私はDB Vertica 8.0を持っていました。タイプLONG VARCHARでテーブルincludeフィールドを含むWAREHOUSEスキーマを作成します。今、私はLONG VARCHARではどのように「LIKE」ですか?

SELECT * FROM WAREHOUSE.ALL_EVENTS a 
WHERE 
a.original_data like '%d963%' 

例えばSELECT execudeしようとした私は、CLOBフィールドのDBMS_LOBパッケージを使用するOracleではエラー

SQL Error [4286] [42883]: [Vertica][VJDBC](4286) ERROR: Operator does not exist: long varchar ~~ unknown 
    [Vertica][VJDBC](4286) ERROR: Operator does not exist: long varchar ~~ unknown 
    com.vertica.util.ServerException: [Vertica][VJDBC](4286) ERROR: Operator does not exist: long varchar ~~ unknown 

を返しました。

VerticaはLONG​​ VARCHAR型のsimularパッケージを持っていますか?

LONG VARCHARではどのように「LIKE」ですか?

答えて

2

fine manualで説明したように、Verticaの(SQL標準)LIKE述部は、CHAR、VARCHAR、BINARYおよびVARBINARYデータ型を受け入れます。

LONG VARCHAR列に対してLIKE操作を実行するには、REGEXP_LIKE(特別なパッケージをインストールする必要はありません)を使用できます。この方法で:

SELECT * FROM WAREHOUSE.ALL_EVENTS a 
WHERE REGEXP_LIKE(a.original_data, 'd963'); 

それだけです。

関連する問題