【发布时间】:2019-12-27 09:47:24
【问题描述】:
表:jd1(比较表)
表:data1(新值表)
我已经在 sql server 中编写了这个查询,它正在工作,但是在 hive 中它显示了一个错误
select * from data1;
1 siva hadoop
1 siva hive
1 siva spark
1 siva hbase
1 siva mapreduce
1 siva hdfs
2 kumar hadoop
2 kumar hive
2 kumar python
2 kumar spark
3 naveen hive
3 naveen hadoop
3 naveen flume
3 naveen kafka
从 jd1 中选择 *;
1 hadoop
1 hive
1 spark
1 hbase
1 mapreduce
1 hdfs
1 python
1 java
预期输出
1 siva 6 85.71428571428571
2 kumar 4 57.142857142857146
3 naveen 2 28.571428571428573
我的查询
select id, name, count(*), ((count(*)*100)/(select count(skills)from jd1))avg
from (select n.id, n.name, n.skills
from data1 n join jd1 t on (n.skills=t.skills))a
group by id,name;
错误
FAILED: ParseException line 1:44 cannot recognize input near 'select' 'count' '(' in expression specification
【问题讨论】: