截至目前,Hive Terminal在运行create table
代码后仅显示列标题。我应该更改哪些设置以使Hive Terminal显示几行,比如前100行?
代码我用来创建表t2
中的表t1
,它位于数据库中(我不知道如何创建t1):
create table t2 as
select *
from t1
limit 100;
现在在开发过程中,我在每个select * from t2 limit 100;
部分之后编写create table
以获取带标题的行。
答案 0 :(得分:1)
Hive Create Table documentation没有提及有关显示记录的任何内容。这与我在Hive中的经验相结合,让我非常有信心,仅通过常规配置更改就无法实现这一目标。
当然你可以点击hive本身的代码,但这不是轻易尝试的。
更改create命令可能会导致各种问题。特别是因为与select命令不同,它实际上是对元数据的操作,后跟插入。这两种通常都不会向你展示任何东西。
如果你要创建一个巨大的表,那么展示一切就会有问题。如果你总是选择只显示前100行,那就不一致了。
现在,您可以做一些事情:
如果你想自动化并且不喜欢代码重复,你可以考虑编写一个小的包装函数来调用create和select,只根据source(和limit)和destination的输入。
这种包装器可以用bash,python或任何你选择的方式编写。
但是,请注意,如果您喜欢ad-hoc / manual执行命令,这可能不合适,因为每次运行此类程序时都需要启动配置单元JVM,因此预计响应时间会很慢。
总而言之,你可能最好只做第一次创建并选择第二次。
答案 1 :(得分:-1)
上面提到的命令似乎是正确的,以显示前100行:
select * from <created_table> limit 100;
粘贴您编写的代码以创建表格将有助于诊断手头的问题!!
尽管如此,在创建表格时,请检查是否已正确提及元素,键值对,集合项等的分隔符。
如果您没有正确定义它们,最终可能只显示第一行(标题)。