【问题标题】:Distinct in HIVE keep all variablesHIVE 中的 Distinct 保留所有变量
【发布时间】:2020-08-19 20:11:17
【问题描述】:

我想保留旧表中的所有 10 个变量,但只选择基于 3 个变量 (var1 var2 var3) 的不同记录,如何将所有 10 个变量保留在 HIVE 的新表中?

(新建表为 选择不同的 变量 1、变量 2、变量 3 从旧的);

【问题讨论】:

  • 。 . SQL 使用术语“列”来描述表中的属性,而不是“字段”。

标签: sql hive distinct


【解决方案1】:

您可以使用row_number() -- 如果您不关心选择了哪些行:

select . . .    -- whatever columns you want
from (select t.*,
             row_number() over (partition by var1, var2, var3 order by var1) as seqnum
      from t
     ) t
where seqnum = 1

【讨论】:

  • 我应该说我有 100 个列/变量不想列出,但如果我选择 *,它似乎不起作用
  • @FunT 。 . .您的问题明确说明了 10 列中的三列的唯一性。同样的想法也有效。您需要列出列。也许电子表格可以提供帮助。
  • 谢谢 Gordon,我很抱歉我是这个论坛的新手。我发布了一个示例,希望能更好地解释我所追求的。
猜你喜欢
  • 1970-01-01
  • 2010-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多