mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-23 16:12:01 +00:00
add doc
fix test fix name style fix
This commit is contained in:
parent
f0b423e928
commit
767bc7a905
@ -503,3 +503,34 @@ Supported modifiers for Format:
|
||||
| %% | a % sign | % |
|
||||
|
||||
[Original article](https://clickhouse.tech/docs/en/query_language/functions/date_time_functions/) <!--hide-->
|
||||
|
||||
## FROM_UNIXTIME
|
||||
|
||||
When there is only single argument of integer type, it act in the same way as `toDateTime` and return [DateTime](../../sql-reference/data-types/datetime.md).
|
||||
type.
|
||||
|
||||
For example:
|
||||
|
||||
```sql
|
||||
SELECT FROM_UNIXTIME(423543535)
|
||||
```
|
||||
|
||||
```text
|
||||
┌─FROM_UNIXTIME(423543535)─┐
|
||||
│ 1983-06-04 10:58:55 │
|
||||
└──────────────────────────┘
|
||||
```
|
||||
|
||||
When there are two arguments, first is integer or DateTime, second is constant format string, it act in the same way as `formatDateTime` and return `String` type.
|
||||
|
||||
For example:
|
||||
|
||||
```sql
|
||||
SELECT FROM_UNIXTIME(1234334543, '%Y-%m-%d %R:%S') AS DateTime
|
||||
```
|
||||
|
||||
```text
|
||||
┌─DateTime────────────┐
|
||||
│ 2009-02-11 14:42:23 │
|
||||
└─────────────────────┘
|
||||
```
|
||||
|
@ -415,7 +415,7 @@ public:
|
||||
size_t result_size = pattern_to_fill.size();
|
||||
|
||||
const DateLUTImpl * time_zone_tmp = nullptr;
|
||||
if (castType(block.getByPosition(arguments[0]).type.get(), [&](const auto & type) { return true; }))
|
||||
if (castType(block.getByPosition(arguments[0]).type.get(), [&]([[maybe_unused]] const auto & type) { return true; }))
|
||||
{
|
||||
time_zone_tmp = &extractTimeZoneFromFunctionArguments(block, arguments, 2, 0);
|
||||
}
|
||||
@ -706,13 +706,13 @@ struct NameFormatDateTime
|
||||
static constexpr auto name = "formatDateTime";
|
||||
};
|
||||
|
||||
struct NameFROM_UNIXTIME
|
||||
struct NameFromUnixTime
|
||||
{
|
||||
static constexpr auto name = "FROM_UNIXTIME";
|
||||
};
|
||||
|
||||
using FunctionFormatDateTime = FunctionFormatDateTimeImpl<NameFormatDateTime, false>;
|
||||
using FunctionFROM_UNIXTIME = FunctionFormatDateTimeImpl<NameFROM_UNIXTIME, true>;
|
||||
using FunctionFROM_UNIXTIME = FunctionFormatDateTimeImpl<NameFromUnixTime, true>;
|
||||
|
||||
void registerFunctionFormatDateTime(FunctionFactory & factory)
|
||||
{
|
||||
|
@ -1,10 +1,10 @@
|
||||
1970-01-01 08:02:03
|
||||
1970-01-01 11:25:45
|
||||
1970-03-17 01:44:37
|
||||
19
|
||||
1970-01-01 00:02:03
|
||||
1973-11-29 21:33:09
|
||||
2038-07-12 01:15:36
|
||||
19
|
||||
11
|
||||
1970-01-15
|
||||
1970-01-15 14:52:36
|
||||
1970-01-15 06:52:36
|
||||
20
|
||||
02
|
||||
01/02/18
|
||||
|
@ -1,10 +1,10 @@
|
||||
SELECT FROM_UNIXTIME(123);
|
||||
SELECT FROM_UNIXTIME(12345);
|
||||
SELECT FROM_UNIXTIME(6457477);
|
||||
SELECT FROM_UNIXTIME(5345345, '%C');
|
||||
SELECT FROM_UNIXTIME(645123, '%H');
|
||||
SELECT FROM_UNIXTIME(1232456, '%Y-%m-%d');
|
||||
SELECT FROM_UNIXTIME(1234356, '%Y-%m-%d %R:%S');
|
||||
SELECT formatDateTime(FROM_UNIXTIME(123), '%Y-%m-%d %R:%S', 'UTC');
|
||||
SELECT formatDateTime(FROM_UNIXTIME(123456789), '%Y-%m-%d %R:%S', 'UTC');
|
||||
SELECT formatDateTime(FROM_UNIXTIME(6457477432), '%Y-%m-%d %R:%S', 'UTC');
|
||||
SELECT FROM_UNIXTIME(5345345, '%C', 'UTC');
|
||||
SELECT FROM_UNIXTIME(645123, '%H', 'UTC');
|
||||
SELECT FROM_UNIXTIME(1232456, '%Y-%m-%d', 'UTC');
|
||||
SELECT FROM_UNIXTIME(1234356, '%Y-%m-%d %R:%S', 'UTC');
|
||||
SELECT FROM_UNIXTIME(toDateTime('2018-01-02 22:33:44'), '%C');
|
||||
SELECT FROM_UNIXTIME(toDateTime('2018-01-02 22:33:44'), '%d');
|
||||
SELECT FROM_UNIXTIME(toDateTime('2018-01-02 22:33:44'), '%D');
|
||||
|
Loading…
Reference in New Issue
Block a user