Hive查询相当于sql

时间:2014-07-02 10:22:02

标签: sql hadoop hive hql hdfs

您好我有一名表学生如下:

student_id course_id
1111       100
2222       101
3333       101
4444       102
5555       103

课程表如下:

course_id course_desc
100       Electronics
101       Computer
102       Mechanical

如果我想加入上述2个表格,我会从学生表中找到course_id,而不是在课程表中列出。因此,每次我加入时,都应该将course_id与课程表进行比较,并了解一个新的课程_在学生表中。

我相信Sql我们可以使用如:

select DISTINCT course_id from students WHERE course_id NOT IN ( select course_id FROM courses);

如何在Hive中完成此任务,我们非常感谢任何帮助或建议。

1 个答案:

答案 0 :(得分:0)

这应该有效:

select students.course_id from students students LEFT OUTER JOIN courses courses  ON (students.course_id = courses.course_id) where courses.course_id is null;

我认为NOT IN不受支持,因此可以解决这个问题。