hiveql相关内容
我正在尝试使用动态分区创建分区表,但是我遇到了一个问题.我正在Hortonworks Sandbox 2.0上运行Hive 0.12. set hive.exec.dynamic.partition=true; INSERT OVERWRITE TABLE demo_tab PARTITION (land) SELECT stadt, geograph_breite, id, t.count
..
在Hive 2.2.0上,我使用查询从另一个大小为1.34 GB的源表中填充一个兽人表 INSERT INTO TABLE TableOrc SELECT * FROM Table; ---- (1) 该查询使用6个orc文件创建TableORC表,这些文件比256MB的块大小小得多. -- FolderList1 -rwxr-xr-x user1 supergroup 6
..
我想获取当前日期为YYMMDD,然后将其设置为变量,以便将其用作表名. 这是我的代码: set dates= date +%Y-%m-%d; CREATE EXTERNAL TABLE IF NOT EXISTS dates( id STRING, region STRING, city STRING) 但是该方法不起作用,因为似乎分配是错误的.有什么主意吗
..
给出以下源数据(假设表名称为user_activity): +---------+-----------+------------+ | user_id | user_type | some_date | +---------+-----------+------------+ | 1 | a | 2018-01-01 | | 1 | a
..
我有一张这样的桌子 + ----- + ---------- -------------------- + | id | mapCol | + ----- + ------------------------------ ++ | id1 | {key1:val1,key2:val2} | | id2 | {key1:val3,key2:val4} | + -----
..
我想将时间戳,例如 1490198341.705 转换为日期 20170323 并转换为小时 11 (GMT + 8:00)。有解决此问题的功能吗? 解决方案 请尝试以下操作: select date_format(from_utc_timestamp(1490198341.705,'GMT + 8:00'),'yyyyMMdd HH:mm:ss');
..
我在配置单元环境中运行查询。 我有一列带有时间戳,但在表中设置了一个字符串。我尝试了以下操作:全部返回Null SELECT ,To_date(activitydate) 投射: ,强制转换(以活动日期作为时间戳记) 这是在表中设置数据的方式: 赞赏我如何进行转换: 05/12 / 2017 00:00:00
..
我有一些试图通过配置单元查询的HDFS数据。数据采用逗号分隔的文本文件的形式。文件中的列之一是日期/时间列,如下所示: Wed Aug 29 16:16:58 CDT 2018 当我尝试读取使用以下脚本创建的Hive表时,得到的值为NULL 使用test_db; 放置表ORDERS; 创建外部表ORDERS( SAMPLE_DT_TM TIMESTAM
..
我正在尝试创建一个指向CSV文件的外部Hive表。 我的CSV文件中有一列(col2),该列值中可能包含双引号和逗号。 每列中的数据: Col1:150 Col2:BATWING,ABC“ D”测试数据 Col3:300 CSV格式的行: 150,“ BATWING,ABC”“ D”“测试数据”,300 创建表DDL :
..
我有一个CSV文件,其中包含以下格式的日期和时间戳记值。例如: Col1 | col2 01JAN2019 | 01JAN2019:17:34:41 但是当我在create语句中将Col1定义为Date并将Col2定义为Timestamp时,Hive表仅返回 NULL 当我查询时。 如果不存在则创建外部表my_schema.my_table (Col1日期,
..
我正在对蜂巢中的几个查询执行一些自动脚本,我们发现需要时间来清除表中的数据并插入新的。并且我们在考虑什么会更快? 插入覆盖表SOME_TABLE SELECT * FROM OTHER_TABLE; ,或者这样做更快: DROP TABLE SOME_TABLE; CREATE TABLE SOME_TABLE(STUFFS); 插入表 SELECT
..
我有一个变量,每一行都是一个句子。 示例: -Row1“嘿,你好吗? -Rwo2”那里? 我希望输出的结果是逐字计数。 示例: 嘿2 1 是1 的样子... 我正在使用分割功能,但是有点卡住了。对此有任何想法吗? 谢谢! 解决方案 这是可能的在蜂巢。按非字母字符分割并使用横向视图+爆炸,然后计算单词:
..
我需要将列值连接到单个列中。 我在变量中有列名,如 colnames = col1,col2,col3 。 我正在从unix外壳编写以下查询,并调用配置单元。但是,当我这样做时,我得到的只是列名,而不是那些列的值。 select concat('regexp_replace (“ $ {colnames}”,“,”,“ ^”))作为表的结果; 我希望输出为:
..
命令: hive -e“使用xxx;如果存在xxx.flashsaleeventproducts_hist`,则删除表;创建外部表` xxx.flashsaleeventproducts_hist`(“ event_id”字符串,“ group_code”字符串,“ id”字符串,“ is_deleted” int,“ price” int,`price_guide` int,`produ
..
我在生产环境(cloudera 5.5)中的配置单元中遇到一个非常奇怪的问题,这在我的本地服务器中基本上是不可复制的(不知道为什么),即对于某些记录,我从临时表中插入时时间戳值错误插入时将字符串“ 2017-10-21 23”转换为主表,并将其转换为时间戳“ 2017-10-21 23:00:00”数据类型。 示例: 2017-10-21 23-> ; 2017-10-21 22
..
例如,我想列出请求中两个日期之间的缺失日期 我的数据: YEAR_MONTH |金额 202001 | 500 202001 | 600 201912 | 100 201910 | 200 201910 | 100 201909 | 400 201601 | 5000 我希望请求返回 201912 | 100 201911 |
..
我的配置单元表中有 day ='2019-01-01'的数据,我想将相同的数据复制到整个2019年1月。 (即'2019-01-02','2019-01-03' ... '2019-01-31') 我正在尝试关注,但数据仅插入到'2019-01-02 ',而不是在'2019-01-03'中。 插入覆盖表db_t.students PARTITION(dt ='2019-01 -02',
..
我有一个要求,我需要返回到一列的以前的值直到1000行,并为下一步获取以前的1000个日期,但是表中该列不存在所有这些1000个以前的日期。但是我需要那些缺少的日期才能从查询的输出中获取。 当我尝试在查询下运行时,它不显示当前日期的1000个以前的日期值。 p> 示例:假设日期列中只有2个日期 date 2019-01-16 2019-01-19 我来
..
假设我的表test的列为a,b,而c和test2的列相同.我可以创建表测试的视图并将测试2连接在一起并按表测试中的字段c排序,而不在最终输出中显示它吗?就我而言: CREATE VIEW AS test_view AS SELECT a,b FROM (SELECT * FROM test ORDER BY c) JOIN test2 ON test.a =test2.a; 好吧,我测试
..
背景: 作为现代化工作的一部分,我试图将一个大型存储过程转换为HiveQL脚本.每当从Azure Data Factory触发管道时,作为蜂巢活动的一部分的HiveQL脚本便会在Azure HDInsight群集上运行. 我要转换的存储过程有很多使用'DECLARE'语句声明的变量.例如: DECLARE @Variable1 INT; 这些变量中的值是使用SELECT语句设
..