草庐IT

HIVE-SQOOP

全部标签

hive sql,年月日 时分秒格式的数据,以15分钟为时间段,找出每一条数据所在时间段的上下界限时间值(15分钟分区)

获取当前的年月日时分秒selectdate_format(current_timestamp(),'yyyy-MM-ddHH:mm:ss')date_format(时间字段,‘yyyy-MM-ddHH:mm:ss’)将时间字段转为2023-10-1818:14:16这种格式在指定时间上增加15分钟selectfrom_unixtime(unix_timestamp(current_timestamp(),'yyyy-MM-ddHH:mm:ss')+(15*60),'yyyy-MM-ddHH:mm:ss')unix_timestamp:获取当前时间的UNIX时间戳(从1970-01-0100:0

hadoop - 重写 Hive IN 子句

我正在尝试在HIVE中执行此子查询,但我收到错误消息,指出我的HIVE版本不支持子查询,不幸的是,是的,我们使用的是旧版本的HIVE。selectcol1,col2fromt1wherecol1in(selectxfromt2wherey=0)然后我像这样使用左半连接重写了子查询,selecta.col1,a.col2FROMt1aLEFTSEMIJOINt2bon(a.col1=b.x)WHEREb.y=0如果我不给出where条件,此查询运行良好,但当我尝试在where条件中使用b.any列或在select子句中使用b.any列时,它无法识别表b。抛出这个错误-Errorwhile

hadoop - 将 TeraData 查询转换为 Hive

请将以下TeraData查询转换为Hive。我是Hive的新手,无法转换它。请指导如何将Teradata的Case..转换为Hive。转换时..我遇到很多错误SELECTMLOC.MATL_LOC_ID,MLOC.MATL_ID,MLOC.LOC_PRTY_ID,MLOC.SRC_SYS_CD,MLOC.PLNT_CD,MLOC.PRCTR_SGMNT_ID,MLOC.PRCTR_CD,MLOC.CC_SGMNT_ID,MLOC.CC_CD,MLOC.CNTL_AREA_NUM,MLOC.DFLT_MATL_PLNT_DESC,MLOC.VALUATION_CATEGORY_CD,ML

sql - 如何检查 HIVE 中 having 子句的顺序?

我希望能够编写一个查询,告诉我哪些数据组没有序列中的每个数字。例如,我的table是这样的:Columns:sequencegroup10ADM1ADM0GDM2GDM3GDM0WJK而且,我想知道group1中的哪些唯一值包含从0开始并计数的所有数字。因此,在这种情况下,ADM和WJK将被返回,但GDM不会。GDM不会,因为它从0、2、3开始并跳过1。我如何在HIVE中编写查询来告诉我列group1中的哪些唯一值依次包含所有整数? 最佳答案 SELECTgroup1FROMTableNameGROUPBYgroup1HAVINGC

scala - 将转换从 hive sql 查询移动到 Spark

valtemp=sqlContext.sql(s"SELECTA,B,C,(CASEWHEN(D)in(1,2,3)THEN((E)+0.000)/60ELSE0END)ASZfromTEST.TEST_TABLE")valtemp1=temp.map({temp=>((temp.getShort(0),temp.getString(1)),(USAGE_TEMP.getDouble(2),USAGE_TEMP.getDouble(3)))}).reduceByKey((x,y)=>((x._1+y._1),(x._2+y._2)))我希望在scala中完成转换,而不是上面在配置单​​

hadoop - Sqoop 导出插入重复条目

我想了解sqoop导出的工作原理。我在mysql中有一个表站点,其中包含两列id和url,并且包含两行1,www.yahoo.com2,www.gmail.com表没有主键当我通过执行以下命令将条目从HDFS导出到mysql站点表时,它会插入重复的条目我在HDFS中有以下条目1,www.one.com2,www.2.com3,www.3.com4,www.4.comsqoopexport--tablesite--connectjdbc:mysql://localhost/loudacre--用户名训练--密码训练--export-dir/site/--update-modeallowi

hadoop - sqoop导入数据到hive

我正在尝试使用sqoop2将数据导入到配置单元表。我正在使用--hive-import但它不起作用代码:sqoopimport--connectjdbc:sqlserver://192.168.x.xxx:11xx--usernameuser--passworduser--tablexxxx.NOTIFICATION--hive-import错误:ERRORmanager.SqlManager:Errorexecutingstatement:com.microsoft.sqlserver.jdbc.SQLServerException:Invalidobjectname'XXXX.NO

date - Hive 数据类型混淆

我有大量数据,其中一个字段类似于WedSep1519:17:44+01002010,我需要将该字段插入到Hive中。我为选择数据类型而烦恼。我尝试了时间戳和日期,但从CSV文件加载时得到空值。 最佳答案 数据类型是字符串,因为它是文本。如果你想转换它,我建议使用TIMESTAMP。但是,您需要在加载数据时或之后(甚至更好)自己进行此转换。要转换为时间戳,可以使用以下语法:CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(,'FORMAT'))asTIMESTAMP)虽然您的格式看起来很复杂。我的建议是将它作为字符串

sql - 对分组列 Hive 的操作

在Hive表中,我有它们的实际销售额和预测。所以数据看起来像:itemdatesalesDolsalesUnitpredictionU11/1/20165.9910.911/1/20165.4910.912/1/20165.9910.8413/1/20166.0410.92为了计算平均价格,我这样做:createtabledata1asselectitem,date,predictionUfromdataJOIN(selectsum(salesDol)astotDol,sum(salesUnit)astotUnitfromdata);所以在每一行中我都有totDol和totUnit。现

mysql - export sqoop 命令出错

我在sqoop中使用导出命令,在从hdfs导出到MySQL时遇到此错误命令是:sqoopexport--connectjdbc:mysql://localhost/property--usernameroot--passwordroot--tablexyz--m1--export-dirabc.csv错误是:16/08/3023:11:33WARNtool.BaseSqoopTool:Settingyourpasswordonthecommand-lineisinsecure.Considerusing-Pinstead.16/08/3023:11:34INFOmanager.MySQ