如何在蜂巢中选择两个列中不同的蜂巢中的所有值

时间:2020-06-13 22:40:38

标签: mysql sql hive hiveql

我有一个像这样的配置单元表(总共460列)

 colA   colB ....... ce_id filename ......... dt
  v      j            4     gg                40
  v      j            5     gg                55
  f      r            4     gg                40
  t      y            7     yy                32
  a      e            5     ee                43

现在我需要编写一个查询,使用带有ce_id和filename的2种不同的列来选择所有数据

我的预期输出

 colA   colB ....... ce_id filename ......... dt
  v      j            4     gg                40
  v      j            5     gg                55
  t      y            7     yy                32
  a      e            5     ee                43

任何人都可以指导我如何选择具有2个不同值的所有数据

1 个答案:

答案 0 :(得分:1)

我认为row_number()是您想要的:

select t.*
from (select t.*,
             row_number() over (partition by ce_id, filename order by dt) as seqnum
      from t
     ) t
where seqnum = 1;

您没有指定所需的 行。上面的公式返回的值为dt的最小值。 order by控制“哪个”。