Hive 蜂巢中条件的先后顺序重要吗?

Hive 蜂巢中条件的先后顺序重要吗?,hive,hql,hiveql,Hive,Hql,Hiveql,我得到的查询结果不同,唯一的区别是where条件的顺序。 这可能是因为源表有问题 SELECT * FROM source WHERE ((submission <> 'Y' or submission is NULL) and payment >0.01) OR (submission='Y' and payment_2 > 0.01); Result 1: +----------+-------------+-------------+------------+-

我得到的查询结果不同,唯一的区别是where条件的顺序。 这可能是因为源表有问题


SELECT *
FROM source
WHERE ((submission <> 'Y' or submission is NULL) and payment >0.01)
OR (submission='Y' and payment_2 > 0.01);

Result 1:
+----------+-------------+-------------+------------+----------+
|   Name   |    entry    | submission  | payment_2  | payment  |
+------------------------------+-------------+-----------------+
| abc      | 1           | NULL        | 0.0        | 790.5    |
+----------+-------------+-------------+------------+----------+

Query 2:

SELECT *
FROM source
WHERE (submission='Y' and payment_2 > 0.01)
OR ((submission <> 'Y' or submission is NULL) and payment >0.01);

Result 2:
+----------+-------------+-------------+------------+----------+
|   Name   |    entry    | submission  | payment_2  | payment  |
+------------------------------+-------------+-----------------+
+----------+-------------+-------------+------------+----------+```

挑选*
来源
其中((提交“Y”或提交为空)和付款>0.01)
或(提交时间为Y,付款时间为2>0.01);
结果1:
+----------+-------------+-------------+------------+----------+
|名称|条目|提交|付款| 2 |付款|
+------------------------------+-------------+-----------------+
|abc | 1 |空| 0.0 | 790.5|
+----------+-------------+-------------+------------+----------+
问题2:
挑选*
来源
其中(提交时间和付款时间>0.01)
或((提交“Y”或提交为空)且付款>0.01);
结果2:
+----------+-------------+-------------+------------+----------+
|名称|条目|提交|付款| 2 |付款|
+------------------------------+-------------+-----------------+
+----------+-------------+-------------+------------+----------+```

条件的顺序无关紧要。您确定表在执行这些查询之间没有变化吗?您好@VamsiPrabhala,不,表是相同的。我使用了
设置hive.optimize.index.filter=false