ClickHouse DateTIme DateTime64 字符串 时间戳 转化
由
木头丶发布于
yearweek toYearWeek
yesterday
today
week toWeek
now64
fromUnixTimestamp64Nano
fromUnixTimestamp64Micro
fromUnixTimestamp64Milli
fromUnixTimestamp FROM_UNIXTIME
toUnixTimestamp64Nano
toUnixTimestamp64Micro
toUnixTimestamp64Milli
toUnixTimestamp
subtractYears
subtractQuarters
subtractHours
subtractSeconds
subtractDays
toStartOfDay
toStartOfFiveMinute
toStartOfISOYear
toStartOfFifteenMinutes
toStartOfMinute
toStartOfYear
toStartOfMonth
toStartOfWeek
toStartOfQuarter
toStartOfHour
toStartOfSecond
toDateTime64OrNull
toDateTimeOrZero
toDateTimeOrNull
addMinutes
addMonths
addQuarters
addWeeks
addHours
addSeconds
addDays
toYYYYMMDDhhmmss
toYYYYMM
toYYYYMMDD
FROM_UNIXTIME
parseDateTime64BestEffortOrNull
parseDateTimeBestEffortOrNull
parseDateTimeBestEffortOrZero
parseDateTimeBestEffort
parseDateTimeBestEffortUS
parseDateTime64BestEffort
toRelativeMinuteNum
toRelativeYearNum
toDecimal32OrNull
toWeek
toMonday
toMinute
toDayOfYear
toISOWeek
toMonth
toQuarter
toIntervalYear
toIntervalQuarter
toSecond
toIntervalMonth
toDayOfWeek
toIntervalWeek
toIntervalHour
toIntervalSecond
toRelativeWeekNum
toDateOrNull
toRelativeDayNum
toHour
toYearWeek
toDateOrZero
toDayOfMonth
toYear
toISOYear
SELECT
now() AS dt,
toYYYYMMDDhhmmss(dt) AS dt_int,
toString(dt) AS dt_str,
parseDateTimeBestEffort(toString(dt_int)) AS datetime
┌──────────────────dt─┬─────────dt_int─┬─dt_str──────────────┬────────────datetime─┐
│ 2020-07-28 10:01:42 │ 20200728100142 │ 2020-07-28 10:01:42 │ 2020-07-28 10:01:42 │
└─────────────────────┴────────────────┴─────────────────────┴─────────────────────┘
SELECT
now() AS dt,
now64(3) AS ms,
now64(6) AS us,
now64(9) AS ns
┌──────────────────dt─┬──────────────────────ms─┬─────────────────────────us─┬────────────────────────────ns─┐
│ 2020-07-28 10:33:19 │ 2020-07-28 10:33:19.070 │ 2020-07-28 10:33:19.070586 │ 2020-07-28 10:33:19.070596096 │
└─────────────────────┴─────────────────────────┴────────────────────────────┴───────────────────────────────┘
--------------------------------------------------------
SELECT *
FROM system.functions
WHERE lower(name) LIKE 'fromunix%'
UNION ALL
SELECT *
FROM system.functions
WHERE lower(name) LIKE 'tounix%'
FORMAT PrettyCompactMonoBlock
┌─name─────────────────────┬─is_aggregate─┬─case_insensitive─┬─alias_to─┐
│ fromUnixTimestamp64Nano │ 0 │ 0 │ │
│ fromUnixTimestamp64Micro │ 0 │ 0 │ │
│ fromUnixTimestamp64Milli │ 0 │ 0 │ │
│ toUnixTimestamp64Nano │ 0 │ 0 │ │
│ toUnixTimestamp64Micro │ 0 │ 0 │ │
│ toUnixTimestamp64Milli │ 0 │ 0 │ │
│ toUnixTimestamp │ 0 │ 0 │ │
└──────────────────────────┴──────────────┴──────────────────┴──────────┘
--------------------------------------------------------
SELECT
now() AS dt,
toYYYYMMDDhhmmss(dt) AS dt_int,
toString(dt) AS dt_str,
parseDateTimeBestEffort(toString(dt_int)) AS datetime
┌──────────────────dt─┬─────────dt_int─┬─dt_str──────────────┬────────────datetime─┐
│ 2020-07-28 10:32:52 │ 20200728103252 │ 2020-07-28 10:32:52 │ 2020-07-28 10:32:52 │
└─────────────────────┴────────────────┴─────────────────────┴─────────────────────┘
1 rows in set. Elapsed: 0.005 sec.
Clickhouse> select now64() dt,toUnixTimestamp(dt) ut,toDateTime(ut) datetime;
SELECT
now64() AS dt,
toUnixTimestamp(dt) AS ut,
toDateTime(ut) AS datetime
┌──────────────────────dt─┬─────────ut─┬────────────datetime─┐
│ 2020-07-28 10:34:25.161 │ 1595903665 │ 2020-07-28 10:34:25 │
└─────────────────────────┴────────────┴─────────────────────┘
--------------------------------------------------------
SELECT
now64(3) AS dt,
toUnixTimestamp64Milli(dt) AS ut,
fromUnixTimestamp64Milli(ut) AS datetime
┌──────────────────────dt─┬────────────ut─┬────────────────datetime─┐
│ 2020-07-28 10:34:47.731 │ 1595903687731 │ 2020-07-28 10:34:47.731 │
└─────────────────────────┴───────────────┴─────────────────────────┘
--------------------------------------------------------
SELECT
now64(6) AS dt,
toUnixTimestamp64Micro(dt) AS ut,
fromUnixTimestamp64Micro(ut) AS datetime
┌─────────────────────────dt─┬───────────────ut─┬───────────────────datetime─┐
│ 2020-07-28 10:35:23.209645 │ 1595903723209645 │ 2020-07-28 10:35:23.209645 │
└────────────────────────────┴──────────────────┴────────────────────────────┘
--------------------------------------------------------
SELECT
now64(9) AS dt,
toUnixTimestamp64Nano(dt) AS ut,
fromUnixTimestamp64Nano(ut) AS datetime
┌────────────────────────────dt─┬──────────────────ut─┬──────────────────────datetime─┐
│ 2020-07-28 10:35:49.248605839 │ 1595903749248605839 │ 2020-07-28 10:35:49.248605839 │
└───────────────────────────────┴─────────────────────┴───────────────────────────────┘
--------------------------------------------------------
SELECT
now64(9) AS dt,
toUnixTimestamp64Nano(dt) AS ut,
fromUnixTimestamp64Nano(ut) AS datetime_ns,
fromUnixTimestamp64Micro(ut) AS us,
fromUnixTimestamp64Milli(ut) AS ms
┌────────────────────────────dt─┬──────────────────ut─┬───────────────────datetime_ns─┬─────────────────────────us─┬──────────────────────ms─┐
│ 2020-07-28 10:37:10.983299230 │ 1595903830983299230 │ 2020-07-28 10:37:10.983299230 │ 2106-02-07 51:43:03.299230 │ 2106-01-27 05:34:59.230 │
└───────────────────────────────┴─────────────────────┴───────────────────────────────┴────────────────────────────┴─────────────────────────┘
本作品采用 《署名-非商业性使用-禁止演绎 4.0 国际》 许可协议,转载必须注明作者和本文链接
评论
请
登录后发表观点