sql - 如何查看hive变量的计算值

标签 sql hadoop hive hql

我试图在配置单元中查看计算值的值。例如,我试图从此表名中获取年份:

set TABLE_NAME = orders2014;
set TABLE_YEAR = substr(${hiveconf:TABLE_NAME},6,4);
set TABLE_YEAR;

我得到的结果是未计算的字符串;

substr(${hiveconf:TABLE_NAME},6,4)

我想得到的是计算值“2​​014”。我将如何查看此值?

谢谢

最佳答案

Hive“变量”其实不过是一种文本替换机制。
替换在解析和执行之前完成。

hive> set hivevar:v1=se;
hive> set hivevar:v2=l;
hive> set hivevar:v3=ec;
hive> set hivevar:v4=t 1+;
hive> set hivevar:v5=2;
hive> ${hivevar:v1}${hivevar:v2}${hivevar:v3}${hivevar:v4}${hivevar:v5};
OK
3

关于sql - 如何查看hive变量的计算值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42958243/

相关文章:

sql - 计算一列中另一列中有多个值的不同记录

java - 从 reducer 访问映射器的计数器

hadoop - 在 hdinsight 配置单元编辑器上使用什么命令连接到特定存储

java - 找不到 hdfs fsck/命令的可信证书

Hive 函数替换列值中的逗号

sql - 如何使用 group by 子句从每个用户的两个子查询的结果集中获取 max( latest_modified_time) 记录?

mysql - INSERT ... ON DUPLICATE KEY(什么都不做)

python - PYODBC--未找到数据源名称且未指定默认驱动程序

ubuntu - 在 Ubuntu 上安装 Hive

hadoop - HDFS的默认 block 大小为128 MB,而Hive的默认 strip 大小为250 MB