美文网首页
hive中字符串类型的日期

hive中字符串类型的日期

作者: 安申 | 来源:发表于2020-06-15 10:58 被阅读0次

    问题: hive 时间字段一般定义为string类型 (例如dt)

    当我们比较时习惯写成 dt> ‘2018-12-27’ 也能找到 相应的内容

    今天细想了一下

    原来是string 的比较大小也能实现 转换成时间后再比较的效果 (以前都是用,突然想明白记录下自己以前不好行为)

    原理:字段‘dt’是string类型,那么比较应该是按照string比的,但是该字段的format可以支持类似于日期的比较,因为年在前,月在当中,日在最后。这样按照字符串比较的规则(字典排序比较),从前往后,第一个不同的字符即决定两个字符串的大小。所以年份小的,一定小,年份相同月份小的,一定小,年月都相同,日期小的一定小。

    在Hive中提供了字段类型TIMESTAMP,但其对应的时间格式为yyyy-MM-dd HH:MM:SS

    如果你的字段是timestamp类型,则字符串会自动转换成timestamp比较

    相关文章

      网友评论

          本文标题:hive中字符串类型的日期

          本文链接:https://www.haomeiwen.com/subject/ptjcxktx.html