我有DB Vertica 8.0。使用类型LONG VARCHAR的表包含字段创建模式WAREHOUSE。现在我尝试执行SELECT例如
SELECT * FROM WAREHOUSE.ALL_EVENTS a
WHERE
a.original_data like '%d963%'
返回错误
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
在Oracle中,我使用dbms_lob包作为CLOB字段。
Vertica有LONG VARCHAR类型的simular包吗?
LONG VARCHAR如何“喜欢”?
答案 0 :(得分:3)
如fine manual中所述,(SQL标准)Vertica中的LIKE谓词接受CHAR,VARCHAR,BINARY和VARBINARY数据类型。
要对LONG VARCHAR列执行LIKE操作,您可以使用REGEXP_LIKE
(无需安装/使用任何特殊包)。这样:
SELECT * FROM WAREHOUSE.ALL_EVENTS a
WHERE REGEXP_LIKE(a.original_data, 'd963');
这就是全部。