【问题标题】:HIVE : Not in clauseHIVE:不在条款中
【发布时间】:2016-09-26 20:19:20
【问题描述】:

有没有办法在 HiveQL 中执行下面的 Sql 查询?

select * from my_table
where (a,b,c) not in (x,y,z)

其中a,b,c分别对应x,y,z

谢谢:)

【问题讨论】:

  • 这个结构是什么意思?样本数据和期望的结果非常有帮助。

标签: hiveql in-clause


【解决方案1】:

您必须将这些分解为单独的条件:

SELECT * 
FROM   my_table
WHERE  a != x AND b != y AND c != z

【讨论】:

  • 谢谢!我意识到 Hive 的局限性,即只有一个子查询可以在 where 子句中运行,我按照你的方法让事情发生了变化! :)
【解决方案2】:

这是你想要的吗?

where a <> x or b <> y or c <> z

还是这个?

where a not in (x, y, z) and
      b not in (x, y, z) and
      c not in (x, y, z)

或者其他一些变化?

【讨论】:

  • 我的意思是你建议的第一个变体!
猜你喜欢
  • 2015-04-29
  • 2021-12-18
  • 2011-10-06
  • 2020-09-29
  • 2018-02-05
  • 1970-01-01
  • 2022-11-11
  • 1970-01-01
  • 2019-06-01
相关资源
最近更新 更多