hadoop - 通过命令行运行 HQL 查询时出错

标签 hadoop hive hiveql hue

我正在通过命令行运行查询并收到此错误。

命令:hive -e query1.hql

失败:ParseException 行 1:0 无法识别“query1”附近的输入。 'hql'

CREATE TABLE dcarlo.new_table AS

SELECT ma.name, ma.address, ma.state 
FROM main_db AS ma
WHERE ma.dt>=20180301 AND ma.dt<=20180331;

最佳答案

使用 -f 而不是 -e 从文件运行脚本。

 hive -f query1.hql

Source

用法: hive

-d,--define key=value 应用于 Hive 的变量替换 命令。例如-d A=B 或 --define A=B

-e 来自命令行的“quoted-query-string”SQL

-f 文件名 SQL 来自文件

-H,--help 打印帮助信息

-h hostname 连接到远程主机上的 Hive Server --hiveconf property=value 使用给定属性的值 --hivevar key=value 应用于配置单元的变量替换 命令。例如--hivevar A=B

-i 文件名初始化SQL文件

-p port 在端口号上连接到 Hive Server

-S,--silent 交互式shell中的静默模式

-v,--verbose 详细模式(将执行的 SQL 回显到 控制台)

关于hadoop - 通过命令行运行 HQL 查询时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50935759/

相关文章:

java - b/w setInputPaths(..) 和 addInputPaths(..) 有什么区别?

mysql - Hadoop Hive 查询从单独的表中选择和分组

hadoop - 无法在带有加载数据的Hive表中插入数据

hadoop - Hive托管表与外部表的可维护性

sql - 将 HIVE 中的表从一个数据库复制到另一个数据库

java - hadoop分布式副本覆盖不起作用

hadoop - 是否有任何 API 可以在给定文件路径的情况下按顺序获取文件的 blockIds?

hadoop - Windows 中的 Kerberos 客户端使用

sql - 用于列出所有可用函数的 HIVEQl 语句

hadoop - 将数据从 HDFS 加载到 Hive 时出现问题