2

我正在尝试在 Hive 中进行以下操作

设置今天=“2013-11-04”;//这有效

设置今天 = to_date(from_unixtime(unix_timestamp())); //这不是..

设置今天;今天=to_date(from_unixtime(unix_timestamp()))

有什么建议么?

4

1 回答 1

2
SET TODAY = to_date(from_unixtime(unix_timestamp()));

这在 Hive 中不可用。你能做的是

select  concat ('set TODAY=',to_date(from_unixtime(unix_timestamp())),'\;') from testTableName limit 1 >>/path/to/HQL/file/fileName.sql

现在在文件fileName.sql你会看到

set TODAY=2013-11-05;

在运行其他相关查询之前,需要加载文件fileName.sql 。你可以这样做:

hive -f hiveQueries.sql

的 hiveQueries.sql文件应包含以下内容:

    use testDB;
    source /path/to/HQL/file/fileName.sql;
    select * from testTable where someColumn=${hiveconf:TODAY};

希望这可以帮助..:)

于 2013-11-05T12:23:40.337 回答