我有两个以分号分隔的输入文件。我将这些文件加载到两个表中。两个表都包含有关书籍的信息。我加入了ISBN字段的两个表格。为了创建这些表,我使用以下查询跳过标题并读取半冒号分隔文件: -
Create table books (ISBN STRING,BookTitle STRING,BookAuthor STRING,YearOfPublication STRING,Publisher STRING,ImageURLS STRING,ImageURLM STRING,ImageURLL STRING) row format delimited fields terminated by '\;' lines terminated by '\n' tblproperties ("skip.header.line.count"="1");
现在,当我尝试以下查询但我没有得到所需的输出时: -
SELECT a.BookRating, COUNT(BookTitle)
FROM Books b
JOIN Rating a
on (b.ISBN = a.ISBN)
WHERE b.YearOfPublication = 2002
GROUP BY a.BookRating;
我什么都没得到。查询完全运行后,它在终端上显示OK。请告诉我可以做些什么。提前谢谢。
答案 0 :(得分:0)
您的DDL脚本不正确。
您已提及
由'\;'
终止的行格式分隔字段但实际上它应该是
行格式分隔的字段以';'
结尾试试这个并告诉我
答案 1 :(得分:0)
YearOfPublication是一个字符串,因此您需要将其更改为
WHERE b.YearOfPublication = '2002'