如何在Impala中使用MINUS操作符查询?
示例:
表:游戏
列: Official_start,halftime_start
我想发送一个查询,其中halftime_start - official_start并将其保存为firsttimeplayed
我知道Impala或HIVE中不存在MINUS,但如果没有它,我该怎么办呢?
答案 0 :(得分:1)
MINUS
是某些SQL版本中的set-operation。它在集合上运行,并且以这种方式类似于UNION
和UNION ALL
。它从第一个查询中获取第二个中不存在的行。我认为运营商的ANSI标准是EXCEPT
而不是MINUS
。 Hive / Impala既不支持MINUS
也不支持EXCEPT
。
-
是减法运算符。这似乎是你想要的;它是加法或+
的逆运算。不幸的是,英语减法的另一个名字是"减去",导致你的混乱。
所以,你这样做:
select (halftime_start - official_start) as firsttimeplayed
. . .