一百三十七、Hive——HQL运行报错(持续更新中)

这篇具有很好参考价值的文章主要介绍了一百三十七、Hive——HQL运行报错(持续更新中)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、timestamp字段与int字段相加

(一)场景

change_time字段是timestamp字段,代表一个红绿灯周期的开始时间(先是绿灯、再是黄灯、最后红灯),而green是int字段,代表绿灯的秒数,现在要求出绿灯的结束时间。即change_time字段+green字段

(二)timestamp字段与int字段无法直接相加,可以先把change_time字段转为时间戳,然后和green字段相加,最后再转为日期

样例:from_unixtime(unix_timestamp(change_time, 'yyyy-MM-dd HH:mm:ss') + green) AS new_timestamp

(三)SQL语句

一百三十七、Hive——HQL运行报错(持续更新中),Hive,hive,hadoop,数据仓库

 成功!!!

二、with语句与insert结合使用

(一)场景

在DWS层中,对多层SQL使用with语句嵌套查询,然后insert插入数据。如果直接把insert放在with语句上面,那么就会如下报错

(二)报错

org.apache.hadoop.hive.ql.parse.ParseException:line 2:0 cannot recognize input near 'with' 'a1' 'as' in statement

(三)解决方法

把insert放在with的后面,select的前面文章来源地址https://www.toymoban.com/news/detail-615715.html

(四)SQL语句

with a1 as(
select
       b1.site_id, b1.phase_id, b1.phase_start, b1.program_id, b1.lane_direction, b1.device_direction,
       b1.min_gree_end, b1.phase_end, b1.team_id, b1.name,
       t8.device_no,
       t9.lane_num lane_no
from  dws_pass as b1
left join hurys_dc_dwd.dwd_radar_config as t8
on t8.direction=b1.device_direction and t8.device_no=b1.device_no  --得到真正的雷达编号字段
left join hurys_dc_dwd.dwd_radar_lane as t9
on t9.device_no=b1.device_no and t9.lane_direction=b1.lane_direction  --得到车道编号字段
group by b1.site_id, b1.phase_id, b1.phase_start, b1.program_id, b1.lane_direction, b1.device_direction, b1.min_gree_end, b1.phase_end, b1.team_id, b1.name, t8.device_no, t9.lane_num)
insert  overwrite  table  dws_pass_sparetime_1hour  partition(day)
select
       a1.site_id,
       phase_id,
       program_id,
       phase_start,
       min_gree_end,
       phase_end,
       a1.device_no,
       team_id,
       name,
       t10.create_time,
       concat(substr(create_time, 1, 14), '00:00') start_time,
       a1.lane_no,
       section_no,
       coil_no,
       device_direction direction,
       lane_direction,
       target_id,
       target_type,
       drive_in_time,
       day
from a1
left join hurys_dc_dwd.dwd_pass as t10
on t10.device_no=a1.device_no and t10.lane_no=a1.lane_no
       and t10.create_time between a1.min_gree_end and a1.phase_end
group by a1.site_id, phase_id, program_id, phase_start, min_gree_end, phase_end, a1.device_no, team_id, name, t10.create_time, a1.lane_no, section_no, coil_no, device_direction, lane_direction, target_id, target_type, drive_in_time, day
;

到了这里,关于一百三十七、Hive——HQL运行报错(持续更新中)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++之C++11 thread线程示例(一百三十八)

    简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏: Audio工程师进阶系列 【 原创干货持续更新中…… 】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:An

    2023年04月15日
    浏览(29)
  • PCL点云处理之pcd文件的读写(详细注释版)(一百三十三)

    `处理点云数据的第一步总是把点云从不同格式的文件读取到自己的程序里, 存储点云信息的文件包括但不限于pcd,las,ply,txt等等,由于我们用的是PCL库进行点云处理,所以最适合的还是pcd格式的点云文件,所以有必要学习如何从pcd文件中读取点云的信息:如坐标等,以及如何

    2023年04月18日
    浏览(45)
  • C/C++基础讲解(一百三十一)之经典篇(信息合并/平均分数存储)

    很多时候,特别是刚步入大学的学子们,对于刚刚开展的计算机课程基本上是一团迷雾,想要弄明白其中的奥秘,真的要花费一些功夫,我和大家一样都是这么啃过来的,从不知到知知,懵懂到入门,每一步都走的很艰辛,课程上,大学老师基本上讲解上机实操得时间特别有

    2024年02月07日
    浏览(31)
  • 架构设计内容分享(一百三十三):ES+Redis+MySQL高可用,如何试实现?

    目录 背景: ES 高可用方案: ES 双中心主备集群架构 ES 流量隔离三集群架构 ES 集群深度优化提升 会员 Redis 缓存方案: ES 近一秒延时导致的 Redis 缓存数据不一致问题的解决方案 Redis 双中心多集群架构 高可用会员主库方案: MySQL 双中心 Partition 集群方案 会员主库平滑迁移方

    2024年02月22日
    浏览(37)
  • 一百八十七、大数据离线数仓完整流程——步骤六、在ClickHouse的ADS层建表并用Kettle同步Hive中DWS层的结果数据

    经过6个月的奋斗,项目的离线数仓部分终于可以上线了,因此整理一下离线数仓的整个流程,既是大家提供一个案例经验,也是对自己近半年的工作进行一个总结。 1、ClickHouse的ADS层建库建表语句 --如果不存在则创建hurys_dc_ads数据库 create database if not exists hurys_dc_ads; --使用

    2024年02月07日
    浏览(36)
  • 二百一十九、Hive——HQL报错:Caused by: java.util.regex.PatternSyntaxException: Illegal repetition near index 1

    在海豚调度HQL的脚本任务时报错, Caused by: java.util.regex.PatternSyntaxException: Illegal repetition near index 1 with t1 as( select        get_json_object(queue_json,\\\'$.deviceNo\\\')   device_no,        get_json_object(queue_json,\\\'$.createTime\\\') create_time,        get_json_object(queue_json,\\\'$.laneNum\\\')    lane_num,        ge

    2024年02月01日
    浏览(39)
  • IDEA 运行hql 出现FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTas

    启用的hiveserver2 的模拟用户功能 ,依赖于Hadoop 提供的proxy user(代理用户功能),只有Hadoop中的代理用户才能模拟其他用户身份访问 Hadoop集群。 因此,需要将hiverserver2 的启动用户设置为 Hadoop 的代理用户 修改hadoop 配置文件 core-site.xml 添加如下配置 重启Hadoop 以及Hive 再次运

    2024年02月11日
    浏览(30)
  • hive on spark hql 插入数据报错 Failed to create Spark client for Spark session Error code 30041

    离线数仓 hive on spark 模式,hive 客户端 sql 插入数据报错 Failed to execute spark task, with exception \\\'org.apache.hadoop.hive.ql.metadata.HiveException(Failed to create Spark client for Spark session 50cec71c-2636-4d99-8de2-a580ae3f1c58)\\\' FAILED: Execution Error, return code 30041 from org.apache.hadoop.hive.ql.exec.spark.SparkTask. Failed t

    2024年02月14日
    浏览(34)
  • 第二百三十二回 如何通过相机获取图片文件

    我们在上一章回中介绍了\\\"如何混合选择多个图片和视频文件\\\"相关的内容,本章回中将介绍 如何通过相机获取图片文件 .闲话休提,让我们一起Talk Flutter吧。 我们在前面章回中介绍的选择图片或者视频文件的方式都是通过文件窗口进行的,本章回中将介绍如何通过相机获取图

    2024年02月20日
    浏览(36)
  • 一起Talk Android吧(第五百三十八回:RxJava中的线程切换)

    各位看官们大家好,上一回中咱们说的例子是\\\"RxJava中的多线程操作\\\",本章回中介绍的例子是\\\"R xJava中的线程切换 \\\"。闲话休提,言归正转,让我们一起Talk Android吧! 我们在上一章回中介绍了如何创建多线程,本章回将介绍如何进行线程切换。线程切换是指在主线程和子线程之

    2023年04月08日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包