蜂巢中=和==之间有什么区别

时间:2017-05-18 09:32:32

标签: hive operators

我在我的一个HQL查询中意外地使用了==而不是=,但令人震惊的是它没有抛出任何错误,但它本来应该为=工作。我的问题是为什么我们在HQL中有==运算符,两者之间的确切区别是什么。

1 个答案:

答案 0 :(得分:5)

===运算符具有相同的功能 它们由完全相同的类实现。

system.registerGenericUDF("=", GenericUDFOPEqual.class);
system.registerGenericUDF("==", GenericUDFOPEqual.class);

FunctionRegistry.java

+----------+---------------------+----------------------------------------------------------------+
| Operator |    Operand types    |                          Description                           |
+----------+---------------------+----------------------------------------------------------------+
| A = B    | All primitive types | TRUE if expression A is equal to expression B otherwise FALSE. |
| A == B   | All primitive types | Synonym for the = operator.                                    |
+----------+---------------------+----------------------------------------------------------------+

LanguageManual UDF