没有通过Hive查询获得所需的输出
我有两个分号分隔的输入文件。我将这些文件加载到两个表中。两张表都包含有关书籍的信息。我加入了ISBN字段的两个表格。为了创建这些表我用下面的查询跳过头和读分号分隔的文件: - 现在没有通过Hive查询获得所需的输出
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。请让我知道可以做些什么。提前致谢。
您的DDL脚本不正确。
您提到
以'\;'结尾的行格式定界字段
但实际上它应该是通过终止
行格式分隔的字段“;”
试试这个,让我知道
yearofpublication介于一个字符串,所以你需要将其更改为
WHERE b.YearOfPublication = '2002'
嗨,你会尝试,让你知道。谢谢 – 2015-03-31 16:18:55
嗨我试过了,但也没有奏效。在运行查询之后,我只是得到OK和Time Taken,没有别的。请建议。 – 2015-03-31 16:57:06
苏尼尔你好,我测试你之前提到的方式,但它不能正常工作。如果我这样做,我会得到一个错误。这就是我用'/'的原因。请让我知道如果我在这里错了。 – 2015-03-31 15:14:15