在 'Like' 运算符 returns UNSUPPORTED_OPERATION 上的 2 个表之间进行钻取连接
Drill Join between 2 tables on 'Like' Operator returns UNSUPPORTED_OPERATION
我正在尝试 运行 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 table 获取所有具有 OS 字符串的手机。此查询在 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)
我认为这是 Drill 中的错误。有什么方法可以让我们在 2 table 之间加入 'Like' 运算符?
我发现在 Drill(和许多其他数据库)中加入需要有一个完全匹配的条件,并且可以有额外的 like
条件。仅具有 like
条件将引发上述错误。
我正在尝试 运行 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 table 获取所有具有 OS 字符串的手机。此查询在 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)
我认为这是 Drill 中的错误。有什么方法可以让我们在 2 table 之间加入 'Like' 运算符?
我发现在 Drill(和许多其他数据库)中加入需要有一个完全匹配的条件,并且可以有额外的 like
条件。仅具有 like
条件将引发上述错误。