drill-join-between-2 tables on'like'操作符返回不支持的\u操作

pdkcd3nj  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(286)

我试图在apache drill上运行一个简单的查询:

select OTT.Handset, OTT.Handset_OS from datasource.`./OTT_DETAILS_V` as OTT,  datasource.`./OS` as D 
where OTT.Handset_OS like concat('%', D.OS , '%');

上面的查询试图从./os表中获取所有具有instring操作系统的手机。此查询在oracle上工作,但在drill上失败,错误如下。

Error: UNSUPPORTED_OPERATION ERROR: This query cannot be planned possibly due to either a cartesian join or an inequality join
[Error Id: 6f685286-1b79-4083-8a31-a31788c3c403 on cluster-3:31010] (state=,code=0)

我想这是演习中的错误。有什么方法可以在两个表之间连接“like”运算符吗?

ruyhziif

ruyhziif1#

我发现join-in-drill(和许多其他数据库)需要有一个精确的匹配条件,并且可以有额外的匹配条件 like 条件。有 like 条件本身就会抛出上述错误。

相关问题