mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-18 04:12:19 +00:00
Fixed formatDateTime for DateTime64 arguments
This commit is contained in:
parent
5c91cc3573
commit
4dcc1b2d2e
@ -480,7 +480,7 @@ public:
|
|||||||
// since right now LUT does not support Int64-values and not format instructions for subsecond parts,
|
// since right now LUT does not support Int64-values and not format instructions for subsecond parts,
|
||||||
// treat DatTime64 values just as DateTime values by ignoring fractional and casting to UInt32.
|
// treat DatTime64 values just as DateTime values by ignoring fractional and casting to UInt32.
|
||||||
const auto c = DecimalUtils::split(vec[i], scale);
|
const auto c = DecimalUtils::split(vec[i], scale);
|
||||||
instruction.perform(pos, static_cast<UInt32>(c.whole), time_zone);
|
instruction.perform(pos, static_cast<Int64>(c.whole), time_zone);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -0,0 +1,27 @@
|
|||||||
|
-- { echo }
|
||||||
|
|
||||||
|
SELECT formatDateTime(toDateTime64('1935-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('1969-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('1989-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('2019-09-16 19:20:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
20
|
||||||
|
SELECT formatDateTime(toDateTime64('2105-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
21
|
||||||
|
SELECT formatDateTime(toDateTime64('2205-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
22
|
||||||
|
-- non-zero scale
|
||||||
|
SELECT formatDateTime(toDateTime64('1935-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('1969-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('1989-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
||||||
|
SELECT formatDateTime(toDateTime64('2019-09-16 19:20:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
20
|
||||||
|
SELECT formatDateTime(toDateTime64('2105-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
21
|
||||||
|
SELECT formatDateTime(toDateTime64('2205-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
19
|
@ -0,0 +1,16 @@
|
|||||||
|
-- { echo }
|
||||||
|
|
||||||
|
SELECT formatDateTime(toDateTime64('1935-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('1969-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('1989-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2019-09-16 19:20:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2105-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2205-12-12 12:12:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
|
||||||
|
-- non-zero scale
|
||||||
|
SELECT formatDateTime(toDateTime64('1935-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('1969-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('1989-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2019-09-16 19:20:12', 0, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2105-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
||||||
|
SELECT formatDateTime(toDateTime64('2205-12-12 12:12:12', 6, 'Europe/Moscow'), '%C');
|
Loading…
Reference in New Issue
Block a user