如何使用 Select 语句在 Hive 中执行除法

bki*_*ler 1 sql hadoop hive division

我在 Hive 中写这个。我有一张只有一个数字的桌子。我将调用包含数字 table_number 和实际数字的表my_number

在另一个尚不存在的表中,我需要输入一个十进制数,即1/my_number.

我试过SELECT CAST((1/(SELECT my_number FROM table_number)) as double); 我得到一个解析异常"cannot recognize input near 'cast' '(' '('

我也试过double(1/(SELECT my_number FROM table_number)); 我得到另一个解析异常"cannot recognize input near 'double' '(' 'Select'

我完全不知道如何做到这一点。谁能给我一些除法示例,这些示例也对其中一个数字使用 select 语句?

max*_*moo 5

你的第一行应该是

SELECT 1/CAST(my_number as double) FROM table_number;
Run Code Online (Sandbox Code Playgroud)

虽然我认为如果你只是这样做,它会被隐含地投射

SELECT 1/my_number FROM table_number;
Run Code Online (Sandbox Code Playgroud)