首页 > 其他分享 >presto、hive使用year、month、date函数使用注意事项

presto、hive使用year、month、date函数使用注意事项

时间:2024-01-31 09:34:53浏览次数:25  
标签:presto 使用 数据类型 hive 报错 sql year

经过尝试,presto查询速度更快,于是使用presto引擎查询,直接将在hive中使用的sql拷贝到presto执行,遇到各种问题。

遇到问题

以下sql在hive中执行成功,变量日期是2024-01-02这样的格式
image

但在presto中执行报错,如下:
image

解决方法

通过观察报错信息最后两行,推测很可能是因为数据类型不正确,所以报错。
于是尝试转换数据类型,结果在presto中执行成功。

直接执行下面的sql,报错。
image

转换数据类型后,执行成功。
image

总结,最稳妥的做法是使用日期相关函数时,都加上数据类型转换,这样在hive、presto中可以使用。

标签:presto,使用,数据类型,hive,报错,sql,year
From: https://www.cnblogs.com/Uni-Hoang/p/17998557

相关文章

  • hive中日期格式转换
    hive中日期格式转换日期时间格式大致分成时间戳和日期时间格式互转,字符串转化成日期时间格式,日期格式之间的转化1.时间戳和日期互转unix_timestamp函数,日期转时间戳当函数参数为空时,返回当前时间戳。当函数参数为空时,返回当前时间戳。selectunix_timestamp()--170660720......
  • Hive
    HiveHive基本概念Hive是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL的查询功能Hive的本质是将HQL转化成MapReduce程序Hive处理的数据存储在HDFS+Hive分析数据底层的实现是MapReduce+执行程序运行在Yarn上Hive的优缺点优点:1.操作接......
  • Hive参数调优:如何控制reduce个数与参数调优(合并小文件和拆分大文件)
    reduce的个数一般最后决定了输出文件的个数,如果想多输出文件的个数(这样文件变小,但有可能程序变慢),那么可以人为增加reduce个数。如果想减少文件个数,也可以手动较少reduce个数(同样可能程序变慢)。但实际开发中,reduce的个数一般通过程序自动推定,而不人为干涉,因为人为控制的话,如果使用......
  • HIVE 添加jar包的方式
    https://blog.csdn.net/qianshangding0708/article/details/50381966  以加入elsaticsearch-hadoop-2.1.2.jar为例,讲述在Hive中加入第三方jar的几种方式。1,在hiveshell中加入   [hadoop@hadoopcluster78bin]$./hive       Logginginitializedusingconfigu......
  • hive表分区
    为什么要使用分区表默认情况下,Hive中的查询会扫描整个表来获取结果。现在,考虑一个Hive表,它有数百万行。当一个简单的查询扫描该表时,它会消耗系统资源。而查询将花费大量时间来获取结果,这最终会影响hive应用程序的性能。因此,在分析如此大的表时,我们需要一种技术来优化查询的性能......
  • Hive - 窗口函数
       1、窗口函数分组,分组聚合,聚合开窗函数和排序开窗函数 createtablestudent_scores( idint, studentIdint, languageint, mathint, englishint, classIdstring, departmentIdstring ); idstudentIdlanguagemathenglishclassIddepartme......
  • 《Hive编程指南》读书笔记
    前言:最近刚接触写HiveSQL,却发现许多查询的执行速度远不如预期。为了提升查询效率,我去阅读了《Hive编程指南》,希望通过理解其底层机制来找到优化的方式,并为未来能编写出高效的SQL奠定基础。谨以此文做个记录。一、Hive因何而生先有Hadoop再有HiveHadoop实现了一个计算模型——......
  • Permission denied: user=hive, access=EXECUTE, inode=“/tmp“:root:supergroup:drw
    在执行Hadoop的创建目录、写数据等情况,可能会出现该异常,而在读文件的时候却不会报错,这主要是由于系统的用户名不同导致的,由于我们进行实际开发的时候都是用Windows操作系统,而编译后的JAVA程序是部署在Linux上的。而Windows的用户名一般都是自定义的或者是administrator,Linux的用户......
  • 启动hiveserver2
    (1)启动hiveserver2前台启动[atguigu@hadoop102hive]$bin/hiveserver2后台启动[atguigu@hadoop102hive]$nohupbin/hiveserver2>/dev/null2>&1& (1)启动hiveserver2[atguigu@hadoop102hive]$bin/hive--servicehiveserver2或者[atguigu@hadoop102hive]$......
  • hivesql报错:java.net.SocketTimeoutException: Read timed out
    场景:在dolphin里面执行hivesql脚本,报错java.net.SocketTimeoutException:Readtimedout解决方式:hive.metastore.client.socket.timeout=1000s 扩展:"Hive报Readtimedout"错误可能也与YARN的资源限制有关。可以通过增加YARN的配置参数来解决此错误。<property><name......