在命令行里面直接输入类似下面的语句,就可以执行impala sql语句。
impala-shell -q "select * from xxxc limit 10;"
当用python等语言运行impala-shell的时候,需要注意"的转义问题。
例如
orders = 'impala-shell -q "alter table sc_share_bigdata.zc_test2 add partition (startdate=\\\"20170420\\\");"'
val0 = os.popen(orders).read()
这个是正确的写法。 语句中的startdate是string类型,所以需要将20170420用“”夸起来。但是-q之后的内容在双引号中,被impala解析,也是当成字符串来解析的,所以还要再转义一次。于是就有了\\\"的写法