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。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- ClickHouse數據庫的監(jiān)控與運維:監(jiān)控指標、監(jiān)控工具、運維策略、故障處理
- clickhouse遠程連接以及用戶名密碼設置方式
- 在docker中搭建部署clickhouse過程
- clickhouse數據庫刪除數據的五種方式
- clickhouse中Nullable與非空字段的建表與類型互轉方式
- 關于clickhouse幾種create table的情況
- clickhouse分布式表的操作示例詳解
- clickhouse系統表日志清理方式詳解
- 數據分析數據庫ClickHouse在大數據領域應用實踐
- 以示例講解Clickhouse Docker集群部署以及配置
- ClickHouse在高并發(fā)寫入場景下的性能優(yōu)化實踐(CPU利用率飆升)
相關文章
詳解DBeaver連接MySQL8以上版本以及解決可能遇到的問題
這篇文章主要介紹了DBeaver連接MySQL8以上版本以及解決可能遇到的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11
MySQL [Warning] TIMESTAMP with implicit&
本文介紹了MySQL中常見的報錯信息及其解決方法,主要包括TIMESTAMP with implicit DEFAULT value is deprecated、ERROR_FOR_DIVISION_BY_ZERO和NO_ZERO_DATE/NO_ZERO_IN_DATE等報錯信息,以及對應的配置文件設置和sql_mode修改方法,感興趣的朋友一起看看吧2025-02-02

