clickhouse复杂时间格式的转换方式

 更新时间:2023年12月21日 16:13:38   作者:阿爵  
这篇文章主要介绍了clickhouse复杂时间格式的转换方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

clickhouse复杂时间格式转换

1.如果只用toDateTime

你需要拼接成一个完全按照YYYY-MM hh:mm:ss格式的字符串给它

否则,它会当你是一个从1970年偏移的毫秒去转换

SELECT 20191231235959 as expire_date, toDateTime(20191231235959), 
concat(toString(floor(20191231235959/10000000000)), '-', 
toString(floor((20191231235959%10000000000)/100000000)), '-', 
toString(floor((20191231235959%100000000)/1000000)), ' ', 
toString(floor((20191231235959%1000000)/10000)),  ':', 
toString(floor((20191231235959%10000)/100)),  ':', 
toString(floor((20191231235959%10000)/100))) as str, toDateTime(str);

2.也可以这样拼接

toDateTime(concat(substring(toString(watch_end_time), 1, 4), '-', 
substring(toString(watch_end_time), 5, 2), 
'-', substring(toString(watch_end_time), 7, 2), ' 
', substring(toString(watch_end_time), 9, 2),
 ':', substring(toString(watch_end_time), 11, 
2), ':', substring(toString(watch_end_time), 13, 2))) as wet

3.但你可以使用一个更强大的函数

parseDateTimeBestEffort(toString(20191201000407)) as wet

结果:

wet
2019-12-01 00:04:07

附相关文档:

  • parseDateTimeBestEffort

将数字类型参数解析为Date或DateTime类型。

与toDate和toDateTime不同,parseDateTimeBestEffort可以进行更复杂的日期格式。

  • parseDateTimeBestEffortOrNull

与parseDateTimeBestEffort相同,但它遇到无法处理的日期格式时返回null。

  • parseDateTimeBestEffortOrZero

与parseDateTimeBestEffort相同,但它遇到无法处理的日期格式时返回零Date或零DateTime。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • mysql索引失效的几种情况分析

    mysql索引失效的几种情况分析

    这篇文章主要给大家介绍了关于mysql索引失效的情况,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • MySQL子查询与HAVING/SELECT的结合使用

    MySQL子查询与HAVING/SELECT的结合使用

    这篇文章主要介绍了MySQL子查询在HAVING/SELECT字句中使用、及相关子查询和WITH/EXISTS字句的使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-06-06
  • mysql 8.0.28 安装配置方法图文教程

    mysql 8.0.28 安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 8.0.28 安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • MySQL由浅入深探究存储过程

    MySQL由浅入深探究存储过程

    存储过程就是一条或者多条SQL语句的集合,可以视为批文件,它可以定义批量插入的语句,也可以定义一个接收不同条件的SQL,下面这篇文章主要给大家介绍了关于MySQL中存储过程的相关资料,需要的朋友可以参考下
    2022-07-07
  • 在linux中导入sql文件的方法分享(使用命令行转移mysql数据库)

    在linux中导入sql文件的方法分享(使用命令行转移mysql数据库)

    为使用阿里云主机,没有装ftp,也没有装phpmyadmin,所以一切都得靠命令行。转移网站的重要一步就是转移数据库,这里简单介绍一下如何在这种情况下导入sql文件
    2014-02-02
  • MySQL如何比较两个表数据的差异

    MySQL如何比较两个表数据的差异

    这篇文章主要介绍了MySQL比较两个表数据的差异,这些方式可以根据具体需求和数据结构选择合适的方法来比较两个表的数据差异,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • mysql5.7以上版本配置my.ini的详细步骤

    mysql5.7以上版本配置my.ini的详细步骤

    这篇文章主要为大家详细介绍了mysql5.7以上版本配置my.ini的详细步骤,文中每一步介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • MySQL 空间碎片的查看与回收

    MySQL 空间碎片的查看与回收

    ySQL数据库在运行过程中可能会出现空间碎片的问题,本文就来介绍一下MySQL 空间碎片的查看与回收 ,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • MySQL中复制数据表中的数据到新表中的操作教程

    MySQL中复制数据表中的数据到新表中的操作教程

    这篇文章主要介绍了MySQL中复制数据表中的数据到新表中的操作教程,文中分为新表存在和新表不存在两种情况来讲,需要的朋友可以参考下
    2016-03-03
  • MySQL中UPDATE语句使用的实例教程

    MySQL中UPDATE语句使用的实例教程

    这篇文章主要介绍了MySQL中UPDATE语句使用的实例教程,包括UPDATE的使用中所容易引起的性能问题的分析,需要的朋友可以参考下
    2015-11-11

最新评论