hive distinct()?

siv3szwd  于 2021-06-26  发布在  Hive
关注(0)|答案(2)|浏览(696)

我想用下面的一个玩具例子来说明distinct是如何工作的。假设您有一个这样的表,有2列,只有2行数据:

SELECT * 
FROM table1;

colA   colB
A      B
A      C

假设我运行了一个select distinct查询:

SELECT DISTINCT colA, colB 
FROM table1;

上面的查询将返回以下哪一个结果?
结果可能性1:

A      B
A      C

对这种可能性的思考是,虽然价值观在不同的层面上是不同的 colA ,则当同时考虑这两列时,整个返回行是唯一的或不同的。我不确定是因为逗号的作用 colA 以及 colBSELECT DISTINCT colA, colB 以及是否有助于限制 DISTINCTcolA .
结果可能性2:

A      B

结果可能性3:

A      C
3xiyfsfu

3xiyfsfu1#

独特的应用于完整行。

A      B
A      C

上面两行是不同的,因此结果将类似于结果可能性1,即。

A   B
A   C
j7dteeu8

j7dteeu82#

也许这会有帮助。此查询:

SELECT DISTINCT colA, colB 
FROM table1;

在功能上等同于:

SELECT colA, colB 
FROM table1
GROUP BY colA, colB;

它将返回所有成对的 colA / colB 出现在数据中。

相关问题