我是蜂巢新手。我有一个如下表:
EntriesRunDate (
id string,
run_date string
);
在上表中,当其关联的run_date是今天的日期(run_date是YYYYMMDD格式)时,将处理该条目。
要选择此类行,我编写了以下配置单元查询:
select * from EntriesRunDate where run_date = (select from_unixtime(unix_timestamp(),'YYYYMMDD'));
但是在运行上述查询时,出现以下错误:
FAILED: SemanticException Line 0:-1 Unsupported SubQuery Expression ''YYYYMMDD'': Only SubQuery expressions that are top level conjuncts are allowed
尽管我认为有一种方法可以通过在命令行中设置变量并在hive中重新使用它来实现,但是我想在hive中进行所有操作。我也不知道它是否可行。
答案 0 :(得分:2)
您不需要子查询,可以直接将值与
进行比较where run_date = from_unixtime(unix_timestamp(current_date),'yyyyMMdd')
或使用date_format
where run_date = date_format(current_date,'yyyyMMdd')