不能对 Float8 数据类型使用 NEGATIVE 函数。是什么赋予了?
Cannot use NEGATIVE function on Float8 data type. What gives?
我正在使用以下内容:
Apache Drill 1.5.0
Distributor ID: Ubuntu
Description: Ubuntu 14.04.3 LTS
Release: 14.04
Codename: trusty
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
当我运行下面的查询
SELECT NEGATIVE(`EX QTY`) as `quantity`, `contract_symbol`, `contract_expiration_month` FROM dfs.`BobBrokerJapanFutures.json` WHERE `B/S` = 'S'
我收到一条错误消息
Query Failed: An Error Occurred
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: SchemaChangeException: Failure while trying to materialize incoming schema. Errors: Error in expression at index -1. Error: Missing function implementation: [negative(FLOAT8-OPTIONAL)]. Full expression: --UNKNOWN EXPRESSION--.. Fragment 0:0 [Error Id: 0d38ceb9-c490-442b-87da-a22043093abd on vagrant-ubuntu-trusty-64:31010
这意味着我不应该在 Float8 上使用负数,对吧?
但是当我使用相同的查询但使用 ABS 函数时,它运行得很好。
怎么回事?
我目前使用
SELECT(`EX QTY` * -1) as `quantity`, `contract_symbol`, `contract_expiration_month` FROM dfs.`/src/Apps/BobBrokerJapanFutures.xlsx.json` WHERE `B/S` = 'S'
作为解决这个问题的方法。
我正在使用以下内容:
Apache Drill 1.5.0
Distributor ID: Ubuntu
Description: Ubuntu 14.04.3 LTS
Release: 14.04
Codename: trusty
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
当我运行下面的查询
SELECT NEGATIVE(`EX QTY`) as `quantity`, `contract_symbol`, `contract_expiration_month` FROM dfs.`BobBrokerJapanFutures.json` WHERE `B/S` = 'S'
我收到一条错误消息
Query Failed: An Error Occurred
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: SchemaChangeException: Failure while trying to materialize incoming schema. Errors: Error in expression at index -1. Error: Missing function implementation: [negative(FLOAT8-OPTIONAL)]. Full expression: --UNKNOWN EXPRESSION--.. Fragment 0:0 [Error Id: 0d38ceb9-c490-442b-87da-a22043093abd on vagrant-ubuntu-trusty-64:31010
这意味着我不应该在 Float8 上使用负数,对吧?
但是当我使用相同的查询但使用 ABS 函数时,它运行得很好。
怎么回事?
我目前使用
SELECT(`EX QTY` * -1) as `quantity`, `contract_symbol`, `contract_expiration_month` FROM dfs.`/src/Apps/BobBrokerJapanFutures.xlsx.json` WHERE `B/S` = 'S'
作为解决这个问题的方法。