数据转换中的常见问题
to<type> 函数和 cast 在某些情况下的行为有所不同,例如对于 LowCardinality:cast 会移除 LowCardinality 特性,而 to<type> 函数不会。对于 Nullable 也是如此。此行为与 SQL 标准不兼容,但可以通过 cast_keep_nullable 设置进行更改。
请注意,如果将某种数据类型的值转换为更小的数据类型 (例如从
Int64 转为 Int32) ,或者在
不兼容的数据类型之间进行转换 (例如从 String 转为 Int) ,可能会导致数据丢失。请务必仔细检查结果是否符合预期。toString 函数说明
toString 函数家族支持在数字、字符串 (但不包括定长字符串) 、日期和日期时间之间进行转换。
所有这些函数都只接受一个参数。
- 在转换为字符串或从字符串转换时,值会按照与 TabSeparated 格式 (以及几乎所有其他文本格式) 相同的规则进行格式化或解析。如果字符串无法解析,则会抛出异常,并取消请求。
- 在将日期转换为数字或反向转换时,日期对应自 Unix 纪元开始以来的天数。
- 在将日期时间转换为数字或反向转换时,日期时间对应自 Unix 纪元开始以来的秒数。
DateTime参数的toString函数可以接受第二个 String 参数,该参数包含时区名称,例如:Europe/Amsterdam。在这种情况下,时间会按照指定的时区进行格式化。
关于 toDate/toDateTime 函数的说明
toDate/toDateTime 函数的日期和日期时间格式定义如下:
toDate(unix_timestamp) 写法;否则这会报错,并且必须写成更繁琐的 toDate(toDateTime(unix_timestamp))。
日期与日期时间之间的转换会以自然的方式进行:添加空时间部分,或去掉时间部分。
数值类型之间的转换遵循与 C++ 中不同数值类型之间赋值相同的规则。
示例
Query
Response
toUnixTimestamp 函数。
CAST
reinterpret 函数不同,CAST 会尝试在目标类型中得到相同的值。
如果无法实现,则会引发异常。
Syntax
Any
示例
基本用法
Query
Response
Query
Response
Query
Response
DATE
toDate 的 MySQL 兼容别名,行为与 toDate 相同。
语法
Date 值。Date
示例
基本用法
Query
Response
accurateCast
CAST 不同,accurateCast 会执行更严格的类型检查;如果转换会导致数据精度丢失,或无法进行转换,则会抛出异常。
与常规的 CAST 相比,该函数更安全,因为它可以防止精度丢失和无效转换。
语法
Any
示例
转换成功
Query
Response
Query
Response
accurateCastOrDefault
accurateCast 类似,但如果无法进行精确转换,则返回默认值,而不是抛出异常。
如果将默认值作为第二个参数传入,则该值必须属于目标类型。
如果未提供默认值,则使用目标类型的默认值。
语法
x— 要转换的值。AnyT— 目标数据类型名称。const Stringdefault_value— 可选。如果转换失败,返回此默认值。Any
Any
示例
转换成功
Query
Response
Query
Response
Query
Response
accurateCastOrNull
accurateCast 类似,但如果无法精确完成转换,则返回 NULL,而不是抛出异常。
此函数结合了 accurateCast 的安全性以及更平稳的错误处理方式。
语法
NULL。Any
示例
转换成功
Query
Response
Query
Response
formatRow
如果格式包含前缀/后缀,它们会写入每一行。
此函数仅支持基于行的格式。
String
示例
基本用法
Query
Response
Query
Response
formatRowNoNewline
formatRow 相同,但会去掉每行末尾的换行符。
通过指定的格式将任意表达式转换为字符串,但会移除结果末尾的所有换行符。
语法
String
示例
基本用法
Query
Response
fromUnixTimestamp64Micro
DateTime64 值。
输入值会被视为具有微秒精度的 Unix 时间戳 (即自 1970-01-01 00:00:00 UTC 起经过的微秒数) 。
语法
DateTime64 值。DateTime64(6)
示例
使用示例
Query
Response
fromUnixTimestamp64Milli
DateTime64 值。
输入值会被视为毫秒精度的 Unix 时间戳 (即自 1970-01-01 00:00:00 UTC 起经过的毫秒数) 。
语法
DateTime64 值。DateTime64(3)
示例
用法示例
Query
Response
fromUnixTimestamp64Nano
DateTime64 值。
输入值会被视为纳秒精度的 Unix 时间戳 (即自 1970-01-01 00:00:00 UTC 以来的纳秒数) 。
请注意,输入值会被视为 UTC 时间戳,而不是按输入值自身的时区来处理。
DateTime64 值。DateTime64(9)
示例
用法示例
Query
Response
fromUnixTimestamp64Second
DateTime64 值。
输入值会被视为秒精度的 Unix 时间戳 (自 1970-01-01 00:00:00 UTC 起经过的秒数) 。
语法
DateTime64 值。DateTime64(0)
示例
用法示例
Query
Response
parseDateTime
formatDateTime 的逆函数。
它使用格式 String 解析 String 参数,并返回 DateTime 类型。
语法
TO_UNIXTIME
参数
time_string— 要解析为 DateTime 的字符串。Stringformat— 用于指定如何解析 time_string 的格式字符串。Stringtimezone— 可选。时区。String
DateTime
示例
使用示例
Query
Response
parseDateTime32BestEffort
DateTime 数据类型。
该函数可以解析 ISO 8601、RFC 1123 - 5.2.14 RFC-822 Date and Time Specification、ClickHouse 以及其他一些日期和时间格式。
语法
time_string 以 DateTime 类型返回。DateTime
示例
使用示例
Query
Response
Query
Response
Query
Response
parseDateTime32BestEffortOrNull
parseDateTime32BestEffort 相同,但在遇到无法处理的日期格式时会返回 NULL。
语法
DateTime 对象;如果解析失败,则返回 NULL。DateTime
示例
使用示例
Query
Response
parseDateTime32BestEffortOrZero
parseDateTime32BestEffort 相同,不同之处在于,当遇到无法处理的日期格式时,它会返回零日期或零日期时间。
语法
DateTime 对象;如果解析失败,则返回零日期 (1970-01-01 00:00:00) 。DateTime
示例
使用示例
Query
Response
parseDateTime64
formatDateTime 的逆操作。
它使用 格式 String 解析一个 String 参数。返回 DateTime64 类型,可表示 1900 年到 2299 年之间、具有子秒级精度的日期时间值。
语法
time_string— 将被解析为 DateTime64 的 String。Stringformat— 用于指定如何解析 time_string 的格式字符串。Stringtimezone— 可选。时区。String
DateTime64
示例
用法示例
Query
Response
parseDateTime64BestEffort
parseDateTimeBestEffort 函数相同,但还支持解析毫秒和微秒,并返回 DateTime64 数据类型。
语法
time_string— 包含待转换日期或日期时间的 String。Stringprecision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。UInt8time_zone— 可选。时区。函数会根据该时区解析time_string。String
DateTime64 数据类型的 time_string。 DateTime64
示例
用法示例
Query
Response
parseDateTime64BestEffortOrNull
parseDateTime64BestEffort 相同,不同之处在于,遇到无法处理的日期格式时会返回 NULL。
语法
time_string— 包含要转换的日期或日期时间的 String。Stringprecision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。UInt8time_zone— 可选。时区。函数会根据该时区解析time_string。String
DateTime64 类型 time_string;如果输入无法解析,则返回 NULL。DateTime64 或 NULL
示例
用法示例
Query
Response
parseDateTime64BestEffortOrZero
parseDateTime64BestEffort 相同,不同之处在于,当遇到无法处理的日期格式时,它会返回零日期或零日期时间。
语法
time_string— 包含要转换的日期或日期时间的 String。Stringprecision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。UInt8time_zone— 可选。时区。函数会按照该时区解析time_string。String
DateTime64 类型 time_string;如果输入无法解析,则返回零日期/日期时间 (1970-01-01 00:00:00.000) 。DateTime64
示例
使用示例
Query
Response
parseDateTime64BestEffortUS
parseDateTime64BestEffort 相同,但在日期格式存在歧义时,此函数会优先采用美国日期格式 (MM/DD/YYYY 等) 。
语法
time_string— 包含要转换的日期或日期时间的 String。Stringprecision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。UInt8time_zone— 可选。时区。函数会根据该时区解析time_string。String
time_string 转换为 DateTime64 后的结果;对于有歧义的情况,优先按美国日期格式解析。DateTime64
示例
使用示例
Query
Response
parseDateTime64BestEffortUSOrNull
parseDateTime64BestEffort 相同,不同之处在于:当日期格式存在歧义时,此函数会优先采用美国日期格式 (MM/DD/YYYY 等) ;当遇到无法处理的日期格式时,则返回 NULL。
语法
time_string— 包含要转换的日期或日期时间的 String。(String)precision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。(UInt8)time_zone— 可选。时区。函数会根据该时区解析time_string。(String)
DateTime64 类型值;如果输入无法解析,则返回 NULL。(DateTime64 或 NULL)
示例
使用示例
Query
Response
parseDateTime64BestEffortUSOrZero
parseDateTime64BestEffort 相同,不同之处在于,此函数在存在歧义时会优先使用美国日期格式 (MM/DD/YYYY 等) ,并且在遇到无法处理的日期格式时会返回零日期或零日期时间。
语法
time_string— 包含要转换的日期或日期时间的 String。Stringprecision— 可选。所需精度。3表示毫秒,6表示微秒。默认值:3。UInt8time_zone— 可选。时区。该函数会按此时区解析time_string。String
time_string 的 DateTime64 值;如果输入无法解析,则返回零日期/日期时间 (1970-01-01 00:00:00.000) 。DateTime64
示例
使用示例
Query
Response
parseDateTime64InJodaSyntax
formatDateTimeInJodaSyntax 的逆操作。
它使用 Joda 风格的格式 String 解析一个 String 类型的参数。返回 DateTime64 类型,可表示 1900 年至 2299 年间且具有子秒级精度的日期和时间。
有关格式模式,请参阅 Joda Time documentation。
语法
time_string— 要解析为 DateTime64 的字符串。Stringformat— Joda 语法格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
DateTime64
示例
使用示例
Query
Response
parseDateTime64InJodaSyntaxOrNull
parseDateTime64InJodaSyntax 相同,但遇到无法解析的日期格式时会返回 NULL。
Syntax
time_string— 要解析为 DateTime64 的字符串。Stringformat— 采用 Joda 语法的格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
Nullable(DateTime64)
示例
使用示例
Query
Response
parseDateTime64InJodaSyntaxOrZero
parseDateTime64InJodaSyntax 相同,但在遇到无法解析的日期格式时会返回零日期。
语法
time_string— 要解析为 DateTime64 的字符串。Stringformat— 采用 Joda 语法的格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
DateTime64
示例
使用示例
Query
Response
parseDateTime64OrNull
parseDateTime64 相同,但遇到无法解析的日期格式时会返回 NULL。
语法
time_string— 将被解析为 DateTime64 的字符串。Stringformat— 指定 time_string 解析方式的格式字符串。Stringtimezone— 可选。时区。String
Nullable(DateTime64)
示例
用法示例
Query
Response
parseDateTime64OrZero
parseDateTime64 相同,但遇到无法解析的日期格式时会返回零日期。
语法
time_string— 要解析为 DateTime64 的字符串。Stringformat— 指定解析 time_string 方式的格式字符串。Stringtimezone— 可选。时区。String
DateTime64
示例
用法示例
Query
Response
parseDateTimeBestEffort
- 包含 9..10 位 Unix 时间戳 的字符串。
- 包含日期和时间部分的字符串:
YYYYMMDDhhmmss、DD/MM/YYYY hh:mm:ss、DD-MM-YY hh:mm、YYYY-MM-DD hh:mm:ss等。 - 包含日期但不含时间部分的字符串:
YYYY、YYYYMM、YYYY*MM、DD/MM/YYYY、DD-MM-YY等。 - 包含日期和时间的字符串:
DD、DD hh、DD hh:mm。在这种情况下,MM会替换为01。 - 包含日期、时间及时区偏移信息的字符串:
YYYY-MM-DD hh:mm:ss ±h:mm等。 - syslog 时间戳:
Mmm dd hh:mm:ss。例如,Jun 9 14:20:32。
DateTime 类型的 time_string。DateTime
示例
用法示例
Query
Response
Query
Response
Query
Response
parseDateTimeBestEffortOrNull
parseDateTimeBestEffort 相同,不同之处在于当遇到无法处理的日期格式时,它会返回 NULL。
该函数可解析 ISO 8601、RFC 1123 - 5.2.14 RFC-822 日期和时间规范、ClickHouse 的日期和时间格式以及其他一些格式。
支持的非标准格式:
- 包含 9 到 10 位 Unix 时间戳的字符串。
- 包含日期和时间部分的字符串:
YYYYMMDDhhmmss、DD/MM/YYYY hh:mm:ss、DD-MM-YY hh:mm、YYYY-MM-DD hh:mm:ss等。 - 包含日期但不包含时间部分的字符串:
YYYY、YYYYMM、YYYY*MM、DD/MM/YYYY、DD-MM-YY等。 - 包含日和时间的字符串:
DD、DD hh、DD hh:mm。在这种情况下,MM会被替换为01。 - 包含日期、时间和时区偏移信息的字符串:
YYYY-MM-DD hh:mm:ss ±h:mm等。 - syslog 时间戳:
Mmm dd hh:mm:ss。例如,Jun 9 14:20:32。
time_string 会以 DateTime 形式返回;如果输入无法解析,则返回 NULL。DateTime 或 NULL
示例
使用示例
Query
Response
parseDateTimeBestEffortOrZero
parseDateTimeBestEffort 相同,不同之处在于,当遇到无法处理的日期格式时,它会返回零日期或零日期时间。
该函数可解析 ISO 8601、RFC 1123 - 5.2.14 RFC-822 日期和时间规范、ClickHouse 格式以及其他一些日期和时间格式。
支持的非标准格式:
- 包含 9 到 10 位 Unix 时间戳的字符串。
- 包含日期和时间部分的字符串:
YYYYMMDDhhmmss、DD/MM/YYYY hh:mm:ss、DD-MM-YY hh:mm、YYYY-MM-DD hh:mm:ss等。 - 包含日期但不包含时间部分的字符串:
YYYY、YYYYMM、YYYY*MM、DD/MM/YYYY、DD-MM-YY等。 - 包含日期和时间的字符串:
DD、DD hh、DD hh:mm。在这种情况下,MM会被替换为01。 - 包含日期、时间和时区偏移信息的字符串:
YYYY-MM-DD hh:mm:ss ±h:mm等。 - syslog 时间戳:
Mmm dd hh:mm:ss。例如,Jun 9 14:20:32。
time_string 作为 DateTime 返回;如果输入无法解析,则返回零日期/日期时间 (1970-01-01 或 1970-01-01 00:00:00) 。DateTime
示例
使用示例
Query
Response
parseDateTimeBestEffortUS
YYYY-MM-DD hh:mm:ss) 以及其他能够明确识别出月份和日期组件的日期格式 (例如 YYYYMMDDhhmmss、YYYY-MM、DD hh 或 YYYY-MM-DD hh:mm:ss ±h:mm) ,此函数的行为与 parseDateTimeBestEffort 相同。
如果无法明确识别月份和日期组件,例如 MM/DD/YYYY、MM-DD-YYYY 或 MM-DD-YY,则会优先按美国日期格式解析,而不是按 DD/MM/YYYY、DD-MM-YYYY 或 DD-MM-YY 解析。
不过,上一条有一个例外:如果月份值大于 12 且小于等于 31,此函数会回退到 parseDateTimeBestEffort 的行为,例如 15/08/2020 会被解析为 2020-08-15。
语法
time_string 解析为 DateTime 的结果;对于有歧义的情况,优先按照美国日期格式进行解析。DateTime
示例
使用示例
Query
Response
parseDateTimeBestEffortUSOrNull
parseDateTimeBestEffortUS 函数相同,不同之处在于:当遇到无法处理的日期格式时,它会返回 NULL。
对于 ISO 日期格式,此函数的行为与 parseDateTimeBestEffort 相同;但在存在歧义的情况下,会优先采用美国日期格式,并在解析出错时返回 NULL。
语法
time_string 按照美国日期格式优先级解析为 DateTime 并返回;如果输入无法解析,则返回 NULL。DateTime 或 NULL
示例
用法示例
Query
Response
parseDateTimeBestEffortUSOrZero
parseDateTimeBestEffortUS 函数相同,但当遇到无法处理的日期格式时,它会返回零日期 (1970-01-01) 或零日期时间 (1970-01-01 00:00:00) 。
对于 ISO 日期格式,此函数的行为与 parseDateTimeBestEffort 相同;但在存在歧义的情况下,会优先采用美国日期格式,并在解析错误时返回零值。
语法
time_string 解析为 DateTime 并返回;如果输入无法解析,则返回零日期/日期时间 (1970-01-01 或 1970-01-01 00:00:00) 。DateTime
示例
使用示例
Query
Response
parseDateTimeInJodaSyntax
formatDateTimeInJodaSyntax 的逆操作。
它使用 Joda 风格的格式 String 解析 String 参数,并返回 DateTime 类型。
有关格式模式,请参阅 Joda Time 文档。
语法
time_string— 将被解析为 DateTime 的 String。Stringformat— Joda 语法格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
DateTime
示例
使用示例
Query
Response
parseDateTimeInJodaSyntaxOrNull
parseDateTimeInJodaSyntax 相同,但在遇到无法解析的日期格式时返回 NULL。
语法
time_string— 要被解析为 DateTime 的字符串。Stringformat— 采用 Joda 语法的格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
Nullable(DateTime)
示例
使用示例
Query
Response
parseDateTimeInJodaSyntaxOrZero
parseDateTimeInJodaSyntax 相同,但遇到无法解析的日期格式时会返回零日期。
语法
time_string— 要解析为 DateTime 的字符串。Stringformat— 采用 Joda 语法的格式字符串,用于指定如何解析 time_string。Stringtimezone— 可选。时区。String
DateTime
示例
使用示例
Query
Response
parseDateTimeOrNull
parseDateTime 相同,但遇到无法解析的日期格式时会返回 NULL。
语法
str_to_date
参数
time_string— 要解析为 DateTime 的字符串。Stringformat— 指定如何解析 time_string 的格式字符串。Stringtimezone— 可选。时区。String
Nullable(DateTime)
示例
使用示例
Query
Response
parseDateTimeOrZero
parseDateTime 相同,但在遇到无法解析的日期格式时会返回零日期。
语法
time_string— 要解析为 DateTime 的字符串。Stringformat— 指定time_string解析方式的格式字符串。Stringtimezone— 可选。时区。String
DateTime
示例
用法示例
Query
Response
reinterpret
x,使用其在内存中的同一源字节序列,并将其重新解释为目标类型。
语法
Any
示例
用法示例
Query
Response
Query
Response
reinterpretAsDate
Date
示例
使用示例
Query
Response
reinterpretAsDateTime
DateTime
示例
用法示例
Query
Response
reinterpretAsFixedString
x 的字节的定长字符串。FixedString
示例
使用示例
Query
Response
reinterpretAsFloat32
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,输出结果则未定义。
语法
x。Float32
示例
使用示例
Query
Response
reinterpretAsFloat64
CAST 不同,此函数不会尝试保留原始值;如果目标类型无法表示输入类型,则输出未定义。
语法
x。Float64
示例
用法示例
Query
Response
reinterpretAsInt128
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,输出结果将是未定义的。
语法
x。Int128
示例
用法示例
Query
Response
reinterpretAsInt16
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,则输出结果未定义。
语法
x。Int16
示例
使用示例
Query
Response
reinterpretAsInt256
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,则输出结果未定义。
语法
x。Int256
示例
使用示例
Query
Response
reinterpretAsInt32
CAST 不同,此函数不会尝试保留原始值;如果目标类型无法表示输入类型,则输出结果未定义。
语法
x。Int32
示例
用法示例
Query
Response
reinterpretAsInt64
CAST 不同,此函数不会尝试保留原始值;如果目标类型无法表示输入类型,则输出结果未定义。
语法
x。Int64
示例
使用示例
Query
Response
reinterpretAsInt8
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示该输入类型,则输出结果未定义。
语法
x。Int8
示例
用法示例
Query
Response
reinterpretAsString
x 的字节序列的字符串。String
示例
用法示例
Query
Response
reinterpretAsUInt128
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示该输入类型,则输出结果未定义。
语法
x。UInt128
示例
使用示例
Query
Response
reinterpretAsUInt16
CAST 不同,此函数不会尝试保留原始值;如果目标类型无法表示输入类型,则输出结果未定义。
语法
x。UInt16
示例
用法示例
Query
Response
reinterpretAsUInt256
CAST 不同,此函数不会尝试保留原始值;如果目标类型无法表示输入类型,则输出结果未定义。
Syntax
x。UInt256
示例
用法示例
Query
Response
reinterpretAsUInt32
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,则输出结果是未定义的。
语法
x 值。UInt32
示例
使用示例
Query
Response
reinterpretAsUInt64
CAST 不同,此函数不会尝试保留原始值——如果目标类型无法表示输入类型,则输出未定义。
语法
x 重新解释后的值。UInt64
示例
使用示例
Query
Response
reinterpretAsUInt8
CAST 不同,该函数不会尝试保留原始值——如果目标类型无法表示输入类型,则输出结果未定义。
Syntax
x。UInt8
示例
用法示例
Query
Response
reinterpretAsUUID
fixed_string— 大端字节串。FixedString
UUID
示例
字符串转换为 UUID
Query
Response
toBFloat16
expr— 返回数值或数值字符串表示形式的表达式。Expression
BFloat16
示例
使用示例
Query
Response
toBFloat16OrNull
- 数值的字符串表示形式。
NULL) :
- 二进制和十六进制值的字符串表示形式。
- 数值。
该函数在从字符串表示形式转换时,允许静默丢失精度。
x— 数字的String字符串表示形式。String
NULL。BFloat16 或 NULL
示例
用法示例
Query
Response
toBFloat16OrZero
- 数值的字符串表示形式。
0) :
- 二进制和十六进制值的字符串表示形式。
- 数值。
该函数允许在从字符串表示形式转换时静默丢失精度。
x— 数字的String表示形式。String
0。BFloat16
示例
使用示例
Query
Response
toBool
expr— 返回数值或字符串的表达式。对于字符串,可接受 ‘true’ 或 ‘false’ (不区分大小写) 。(U)Int*或Float*或String或Expression
true 或 false。Bool
示例
用法示例
Query
Response
toDate
Date 类型。
支持从 String、FixedString、DateTime 或数值类型转换。
语法
x— 要转换的输入值。String或FixedString或DateTime或(U)Int*或Float*
Date
示例
将 String 转换为 Date
Query
Response
Query
Response
Query
Response
toDate32
toDate32 会返回 Date32 支持的边界值。
如果参数类型为 Date,则会考虑其取值边界。
语法
Date32
示例
在取值范围内
Query
Response
Query
Response
toDate32OrDefault
toDate32OrDefault 会返回 Date32 支持的下限值。如果参数的类型为 Date,则会考虑其边界。如果接收到无效参数,则返回默认值。
语法
Date32 类型的值;否则,如果传入了默认值则返回该默认值,未传入则返回 1900-01-01。Date32
示例
转换成功
Query
Response
Query
Response
toDate32OrNull
NULL。
与 toDate32 相同,但在参数无效时会返回 NULL。
语法
x— 日期的字符串表示形式。String
NULL。Date32 或 NULL
示例
用法示例
Query
Response
toDate32OrZero
x— 日期的字符串表示形式。String
1900-01-01) 。Date32
示例
使用示例
Query
Response
toDateOrDefault
Date
示例
转换成功
Query
Response
Query
Response
toDateOrNull
Date 类型的值;如果参数无效,则返回 NULL。
与 toDate 相同,但在参数无效时返回 NULL。
语法
x— 日期的字符串表示形式。String
Date 值,否则返回 NULL。Date 或 NULL
示例
用法示例
Query
Response
toDateOrZero
Date 类型的值;如果传入的是无效参数,则返回 Date 的下界值。
与 toDate 相同,但如果传入的是无效参数,则返回 Date 的下界值。
另请参见:
语法
x— 日期的字符串表示形式。String
1970-01-01) 。Date
示例
用法示例
Query
Response
toDateTime
如果
expr 是数值,则会将其解释为自 Unix 纪元开始以来的秒数 (即 Unix timestamp) 。
如果 expr 是 String,则可能会将其解释为 Unix timestamp,或解释为日期 / 日期时间的字符串表示形式。
因此,由于存在歧义,较短数字的字符串表示形式 (最多 4 位) 会明确禁用解析。例如,字符串 '1999' 既可能表示年份 (Date / DateTime 的不完整字符串表示形式) ,也可能是 Unix timestamp。更长的数字字符串则允许解析。DateTime
示例
使用示例
Query
Response
toDateTime32
DateTime 类型。
支持从 String、FixedString、Date、Date32、DateTime 或数值类型 ((U)Int*、Float*、Decimal) 转换。
与 DateTime 相比,DateTime32 的取值范围更大,支持 1900-01-01 至 2299-12-31 的日期。
Syntax
x— 要转换的输入值。String或FixedString或UInt*或Float*或Date或DateTime或DateTime64timezone— 可选。返回的DateTime值使用的时区。String
DateTime
示例
值在范围内
Query
Response
Query
Response
Query
Response
toDateTime64
DateTime64 类型的值。
语法
expr— 返回数值或数值字符串表示形式的表达式。Expressionscale— 时间粒度 (精度) :10^(-scale) 秒。UInt8timezone— 可选。指定DateTime64对象的时区。String
DateTime64
示例
值在范围内
Query
Response
Query
Response
Query
Response
toDateTime64OrDefault
expr— 返回数值或数值字符串表示形式的表达式。String或(U)Int*或Float*scale— 时间粒度 (精度) :10^-precision 秒。UInt8timezone— 可选。时区。Stringdefault— 可选。解析失败时返回的默认值。DateTime64
DateTime64
示例
成功转换
Query
Response
Query
Response
toDateTime64OrNull
DateTime64 类型的值;如果接收到无效参数,则返回 NULL。
与 toDateTime64 相同,但如果接收到无效参数,则返回 NULL。
语法
x— 带有子秒级精度的日期时间字符串表示形式。String
NULL。DateTime64 或 NULL
示例
用法示例
Query
Response
toDateTime64OrZero
x— 带有子秒级精度的日期时间字符串表示形式。String
1970-01-01 00:00:00.000) 。DateTime64
示例
使用示例
Query
Response
toDateTimeOrDefault
expr— 返回数值或数值字符串表示形式的表达式。String或(U)Int*或Float*timezone— 可选。时区。Stringdefault— 可选。解析失败时返回的默认值。DateTime
DateTime 类型的值;否则如果传入了默认值,则返回该默认值;若未传入,则返回 1970-01-01 00:00:00。DateTime
示例
转换成功
Query
Response
Query
Response
toDateTimeOrNull
DateTime 类型的值;如果接收到无效参数,则返回 NULL。
与 toDateTime 相同,但在接收到无效参数时会返回 NULL。
语法
x— 日期时间的字符串表示形式。String
DateTime 值,否则返回 NULL。DateTime 或 NULL
示例
用法示例
Query
Response
toDateTimeOrZero
x— 日期时间的字符串表示形式。String
1970-01-01 00:00:00) 。DateTime
示例
使用示例
Query
Response
toDecimal128
S 的 Decimal(38, S) 类型值。
出错时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
- Float* 类型的
NaN和Inf值,及其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toDecimal128('0xc0fe', 1);。
如果
expr 的值超出 Decimal128 的范围:(-1*10^(38 - S), 1*10^(38 - S)),则可能发生溢出。
小数部分中过多的位数会被截掉 (不进行舍入) 。
整数部分中过多的位数会导致异常。Decimal(38, S) 的值 Decimal128(S)
示例
用法示例
Query
Response
toDecimal128OrDefault
toDecimal128 类似,此函数将输入值转换为 Decimal(38, S) 类型的值,但如果发生错误,则返回默认值。
语法
expr— 数字的 String 字符串表示形式。StringS— 介于 0 到 38 之间的 scale 参数,用于指定数字的小数部分可包含的位数。UInt8default— 可选。如果解析为 Decimal128(S) 类型失败,则返回此默认值。Decimal128(S)
Decimal128(S)
示例
转换成功
Query
Response
Query
Response
toDecimal128OrNull
Decimal(38, S) 类型的值;如果出错,则返回 NULL。
与 toDecimal128 类似,但在转换出错时返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
NULL) :
- Float* 值
NaN和Inf及其字符串表示形式 (不区分大小写) 。 - 二进制值和十六进制值的字符串表示形式。
- 超出
Decimal128取值范围的值:(-1*10^(38 - S), 1*10^(38 - S))。
expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 到 38 之间的 scale 参数,用于指定数值的小数部分可包含的位数。UInt8
NULL。Decimal128(S) 或 NULL
示例
使用示例
Query
Response
toDecimal128OrZero
0。
与 toDecimal128 类似,但在转换出错时返回 0,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
0) :
- Float* 值
NaN和Inf,或其字符串表示形式 (不区分大小写) 。 - 二进制值和十六进制值的字符串表示形式。
如果输入值超出
Decimal128 的范围:(-1*10^(38 - S), 1*10^(38 - S)),函数将返回 0。expr— 返回数字或数字字符串表示形式的表达式。ExpressionS— 取值范围为 0 到 38 的 scale 参数,用于指定数字的小数部分最多可以有多少位。UInt8
0。Decimal128(S)
示例
基本用法
Query
Response
toDecimal256
S 标度的 Decimal(76, S) 类型的值。出错时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
- Float* 值
NaN和Inf及其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toDecimal256('0xc0fe', 1);。
如果
expr 的值超出 Decimal256 的取值范围:(-1*10^(76 - S), 1*10^(76 - S)),则可能发生溢出。
小数部分中过多的数字会被截去 (不进行舍入) 。
整数部分位数过多将导致异常。Decimal(76, S) 类型的值。Decimal256(S)
示例
使用示例
Query
Response
toDecimal256OrDefault
toDecimal256 类似,此函数会将输入值转换为 Decimal(76, S) 类型的值,但如果发生错误,则返回默认值。
语法
expr— 数字的String表示形式。StringS— 介于 0 到 76 之间的 scale 参数,用于指定数字的小数部分可以有多少位。UInt8default— 可选。如果解析为 Decimal256(S) 类型失败,则返回该默认值。Decimal256(S)
Decimal(76, S) 类型的值;否则,如果传入了默认值则返回该默认值,未传入则返回 0。Decimal256(S)
示例
转换成功
Query
Response
Query
Response
toDecimal256OrNull
Decimal(76, S) 类型的值,但如果出错则返回 NULL。
与 toDecimal256 类似,但在转换出错时返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
NULL) :
- Float* 类型的
NaN和Inf值,或其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式。
- 超出
Decimal256取值范围的值:(-1 * 10^(76 - S), 1 * 10^(76 - S))。
expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 取值范围为 0 到 76 的 scale 参数,用于指定数值的小数部分最多可以有多少位。UInt8
Decimal(76, S) 值,否则返回 NULL。Decimal256(S) 或 NULL
示例
使用示例
Query
Response
toDecimal256OrZero
0。
与 toDecimal256 类似,但在转换出错时返回 0,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
0) :
- Float* 值
NaN和Inf,以及它们的字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式。
如果输入值超出
Decimal256 的范围:(-1*10^(76 - S), 1*10^(76 - S)),函数将返回 0。expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 到 76 之间的 scale 参数,用于指定数值的小数部分最多可包含多少位数字。UInt8
0。Decimal256(S)
示例
用法示例
Query
Response
toDecimal32
Decimal(9, S) 类型、标度为 S 的值。出错时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
- Float* 值
NaN和Inf及其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toDecimal32('0xc0fe', 1);。
如果
expr 的值超出 Decimal32 的范围:(-1*10^(9 - S), 1*10^(9 - S)),则可能发生溢出。
小数部分中多余的数字会被截去 (不进行四舍五入) 。
整数部分中多余的数字会导致抛出异常。expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 取值范围为 0 到 9 的 scale 参数,用于指定数值的小数部分可以有多少位。UInt8
Decimal(9, S) 的值 Decimal32(S)
示例
使用示例
Query
Response
toDecimal32OrDefault
toDecimal32 类似,此函数会将输入值转换为 Decimal(9, S) 类型的值,但如果发生错误,则返回默认值。
语法
expr— 数字的String表示形式。StringS— 介于 0 到 9 之间的 scale 参数,用于指定数字的小数部分可有多少位。UInt8default— 可选。如果解析为 Decimal32(S) 类型失败,则返回此默认值。Decimal32(S)
Decimal32(S)
示例
转换成功
Query
Response
Query
Response
toDecimal32OrNull
Decimal(9, S) 类型的值;如果发生错误,则返回 NULL。
与 toDecimal32 类似,但在转换出错时会返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
NULL) :
- Float* 类型的
NaN和Inf值,或其字符串表示形式 (不区分大小写) 。 - 二进制值和十六进制值的字符串表示形式。
- 超出
Decimal32取值范围的值:(-1*10^(9 - S), 1*10^(9 - S))。
expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 和 9 之间的 scale 参数,指定数值的小数部分可包含的位数。UInt8
NULL。Decimal32(S) 或 NULL
示例
用法示例
Query
Response
toDecimal32OrZero
0。
与 toDecimal32 类似,但在转换出错时会返回 0,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
0) :
- Float* 值
NaN和Inf,以及它们的字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式。
如果输入值超出
Decimal32 的范围:(-1*10^(9 - S), 1*10^(9 - S)),则函数返回 0。expr— 返回数值或数值的字符串表示形式的表达式。ExpressionS— 介于 0 到 9 之间的 scale 参数,用于指定数值的小数部分可以有多少位。UInt8
Decimal(9, S) 值,否则返回 0。Decimal32(S)
示例
用法示例
Query
Response
toDecimal64
S 的 Decimal(18, S) 类型值。
出错时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
- Float* 类型的
NaN和Inf值,或其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toDecimal64('0xc0fe', 1);。
如果
expr 的值超出 Decimal64 的范围:(-1*10^(18 - S), 1*10^(18 - S)),则可能发生溢出。
小数部分中多余的数字会被截去 (不进行四舍五入) 。
整数部分中多余的数字会导致抛出异常。expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 到 18 之间的 scale 参数,用于指定数值的小数部分可以有多少位。UInt8
Decimal(18, S)
示例
使用示例
Query
Response
toDecimal64OrDefault
toDecimal64 类似,此函数会将输入值转换为 Decimal(18, S) 类型的值,但如果发生错误,则返回默认值。
语法
expr— 数字的String字符串表示形式。StringS— 介于 0 到 18 之间的 scale 参数,用于指定数字的小数部分最多可有多少位。UInt8default— 可选。如果无法解析为Decimal64(S)类型,则返回此默认值。Decimal64(S)
Decimal(18, S) 类型的值;否则,如果传入了默认值则返回默认值,未传入则返回 0。Decimal64(S)
示例
成功转换
Query
Response
Query
Response
toDecimal64OrNull
NULL。
与 toDecimal64 类似,但在转换出错时返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
NULL) :
- Float* 值
NaN和Inf及其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式。
- 超出
Decimal64取值范围的值:(-1*10^(18 - S), 1*10^(18 - S))。
expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 到 18 之间的 scale 参数,用于指定数值的小数部分可包含的位数。UInt8
NULL。Decimal64(S) 或 NULL
示例
使用示例
Query
Response
toDecimal64OrZero
0。
与 toDecimal64 类似,但在转换错误时返回 0,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值或其字符串表示形式。
0) :
- Float* 类型的
NaN和Inf值,或其字符串表示形式 (不区分大小写) 。 - 二进制和十六进制值的字符串表示形式。
如果输入值超出
Decimal64 的范围:(-1*10^(18 - S), 1*10^(18 - S)),函数将返回 0。expr— 返回数值或数值字符串表示形式的表达式。ExpressionS— 介于 0 到 18 之间的 scale 参数,用于指定数值的小数部分最多可以有多少位数字。UInt8
Decimal(18, S) 值,否则返回 0。Decimal64(S)
示例
使用示例
Query
Response
toDecimalString
number— 要转换为字符串的数值。可以是任意数值类型 (Int、UInt、Float、Decimal) 。Int8或Int16或Int32或Int64或UInt8或UInt16或UInt32或UInt64或Float32或Float64或Decimalscale— 小数部分显示的位数。必要时会对结果进行四舍五入。UInt8
String
示例
对数值进行四舍五入并格式化
Query
Response
Query
Response
Query
Response
toFixedString
String 参数转换为 FixedString(N) 类型 (长度固定为 N 的字符串) 。
如果字符串的字节数小于 N,则会在右侧用空字节填充。
如果字符串的字节数大于 N,则会抛出异常。
语法
s— 要转换的 String。StringN— 生成的 FixedString 的长度。const UInt*
FixedString(N)
示例
使用示例
Query
Response
toFloat32
- (U)Int* 类型的值。
- (U)Int8/16/32/128/256 的字符串表示形式。
- Float* 类型的值,包括
NaN和Inf。 - Float* 的字符串表示形式,包括
NaN和Inf(不区分大小写) 。
- 二进制值和十六进制值的字符串表示形式,例如
SELECT toFloat32('0xc0fe');。
expr— 返回数值或数值字符串表示形式的表达式。Expression
Float32
示例
使用示例
Query
Response
toFloat32OrDefault
toFloat32 类似,此函数会将输入值转换为 Float32 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Float32 类型的值;否则,如果传入了默认值,则返回该默认值;如果未传入,则返回 0。Float32
示例
转换成功
Query
Response
Query
Response
toFloat32OrNull
NULL。
与 toFloat32 类似,但在转换出错时会返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值。
- (U)Int8/16/32/128/256 的字符串表示形式。
- Float* 类型的值,包括
NaN和Inf。 - Float* 的字符串表示形式,包括
NaN和Inf(不区分大小写) 。
NULL) :
- 二进制和十六进制值的字符串表示形式,例如
SELECT toFloat32OrNull('0xc0fe');。 - 无效的字符串格式。
x— 数值的字符串表示形式。String
NULL。Float32 或 NULL
示例
使用示例
Query
Response
toFloat32OrZero
0。
与 toFloat32 类似,但在转换出错时会返回 0,而不是抛出异常。
另请参见:
语法
x— 数字的字符串表示形式。String
0。Float32
示例
用法示例
Query
Response
toFloat64
Float64 类型的值。
发生错误时会抛出异常。
支持的参数:
- (U)Int* 类型的值。
- (U)Int8/16/32/128/256 的字符串表示形式。
- Float* 类型的值,包括
NaN和Inf。 - Float* 类型的字符串表示形式,包括
NaN和Inf(不区分大小写) 。
- 二进制和十六进制值的字符串表示形式,例如
SELECT toFloat64('0xc0fe');。
expr— 返回数字或数字的字符串表示形式的表达式。Expression
Float64
示例
用法示例
Query
Response
toFloat64OrDefault
toFloat64 类似,此函数会将输入值转换为 Float64 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则发生错误时返回 0。
语法
Float64 类型的值;否则,如果传入了默认值则返回该默认值,未传入则返回 0。Float64
示例
转换成功
Query
Response
Query
Response
toFloat64OrNull
NULL。
与 toFloat64 类似,但在转换出错时会返回 NULL,而不是抛出异常。
支持的参数:
- (U)Int* 类型的值。
- (U)Int8/16/32/128/256 的字符串表示形式。
- Float* 类型的值,包括
NaN和Inf。 - Float* 类型的字符串表示形式,包括
NaN和Inf(不区分大小写) 。
NULL) :
- 二进制和十六进制值的字符串表示形式,例如
SELECT toFloat64OrNull('0xc0fe');。 - 无效的字符串格式。
x— 数值的字符串表示形式。String
NULL。 Float64 或 NULL
示例
使用示例
Query
Response
toFloat64OrZero
0。
与 toFloat64 类似,但在转换错误时会返回 0,而不是抛出异常。
另请参见:
语法
x— 数值的字符串表示形式。String
0。Float64
示例
使用示例
Query
Response
toInt128
(U)Int*类型的值或其字符串表示形式。Float*类型的值。
Float*值的字符串表示形式,包括NaN和Inf。- 二进制和十六进制值的字符串表示形式,例如
SELECT toInt128('0xc0fe');。
如果输入值无法在 Int128 的取值范围内表示,结果会发生上溢或下溢。
这不视为错误。
expr— 返回数值或数值字符串表示形式的表达式。Expression
Int128
示例
用法示例
Query
Response
toInt128OrDefault
toInt128 类似,该函数会将输入值转换为 Int128 类型的值,但在发生错误时会返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Int128 类型的值;否则,如果传入了默认值,则返回该默认值;如果未传入,则返回 0。Int128
示例
成功转换
Query
Response
Query
Response
toInt128OrNull
toInt128 类似,此函数会将输入值转换为 Int128 类型的值,但在出错时返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt128OrNull('0xc0fe');。
如果输入值超出 Int128 的可表示范围,结果会发生上溢或下溢。
这不视为错误。
x— 数字的字符串表示形式。String
NULL。Int128 或 NULL
示例
使用示例
Query
Response
toInt128OrZero
0。
与 toInt128 类似,但返回 0 而不是抛出异常。
另请参见:
语法
0。Int128
示例
使用示例
Query
Response
Query
Response
toInt16
Int16 类型的值。
发生错误时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 类型值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt16('0xc0fe');。
如果输入值无法表示在 Int16 的范围内,则结果会发生上溢或下溢。
这不视为错误。
例如:
SELECT toInt16(32768) == -32768;。该函数采用向零舍入,也就是说会截去数字的小数位。
expr— 返回数值或该数值的字符串表示形式的表达式。Expression
Int16
示例
用法示例
Query
Response
toInt16OrDefault
toInt16 类似,此函数将输入值转换为 Int16 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Int16
示例
转换成功
Query
Response
Query
Response
toInt16OrNull
toInt16 类似,此函数将输入值转换为 Int16 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt16OrNull('0xc0fe');。
如果输入值无法表示为 Int16 范围内的值,结果会发生上溢或下溢。
这不视为错误。
x— 数值的String字符串表示形式。String
Int16 类型的值;如果转换失败,则返回 NULL。Int16 或 NULL
示例
用法示例
Query
Response
toInt16OrZero
toInt16 类似,此函数会将输入值转换为 Int16 类型的值,但在发生错误时返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt16OrZero('0xc0fe');。
如果输入值无法在 Int16 的取值范围内表示,则结果会发生上溢或下溢。
这不视为错误。
x— 数值的String字符串表示形式。String
0。Int16
示例
使用示例
Query
Response
toInt256
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt256('0xc0fe');。
如果输入值超出 Int256 的表示范围,结果会发生上溢或下溢。
这不视为错误。
expr— 返回数字或数字的字符串表示形式的表达式。表达式
Int256
示例
使用示例
Query
Response
toInt256OrDefault
toInt256 类似,此函数会将输入值转换为 Int256 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Int256
示例
转换成功
Query
Response
Query
Response
toInt256OrNull
toInt256 类似,此函数会将输入值转换为 Int256 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt256OrNull('0xc0fe');。
如果输入值超出了 Int256 的可表示范围,则结果会发生上溢或下溢。
这不视为错误。
x— 数字的 String 字符串表示形式。String
NULL。Int256 或 NULL
示例
使用示例
Query
Response
toInt256OrZero
0。
与 toInt256 类似,但会返回 0,而不是抛出异常。
另请参见:
语法
0。(Int256)
示例
用法示例
Query
Response
Query
Response
toInt32
Int32 类型的值。
出错时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 类型值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt32('0xc0fe');。
如果输入值超出 Int32 的表示范围,结果会发生上溢或下溢。
这不视为错误。
例如:
SELECT toInt32(2147483648) == -2147483648;该函数采用向零舍入,即截去数字的小数位。
expr— 返回数值或数值字符串表示形式的表达式。表达式
Int32
示例
用法示例
Query
Response
toInt32OrDefault
toInt32 类似,此函数会将输入值转换为 Int32 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Int32
示例
转换成功
Query
Response
Query
Response
toInt32OrNull
toInt32 类似,此函数会将输入值转换为 Int32 类型的值,但如果发生错误则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt32OrNull('0xc0fe');。
如果输入值无法在 Int32 的取值范围内表示,结果会发生上溢或下溢。
这不视为错误。
x— 数字的字符串表示形式。String
Int32 类型的值;如果转换失败,则返回 NULL。Int32 或 NULL
示例
用法示例
Query
Response
toInt32OrZero
toInt32 类似,此函数会将输入值转换为 Int32 类型的值;如果发生错误,则返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt32OrZero('0xc0fe');。
如果输入值超出 Int32 的表示范围,结果会发生上溢或下溢。
这不视为错误。
x— 数字的String表示形式。String
0。Int32
示例
使用示例
Query
Response
toInt64
Int64 类型的值。
如果发生错误,则会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt64('0xc0fe');。
如果输入值超出 Int64 的表示范围,结果会发生上溢或下溢。
这不视为错误。
例如:
SELECT toInt64(9223372036854775808) == -9223372036854775808;该函数使用向零舍入,即会截断数字的小数位。
expr— 返回数值或数值字符串表示形式的表达式。支持:类型为 (U)Int* 的值或其字符串表示形式,以及类型为 Float* 的值。不支持:Float* 值的字符串表示形式 (包括 NaN 和 Inf) ,以及二进制和十六进制值的字符串表示形式。表达式
Int64
示例
使用示例
Query
Response
toInt64OrDefault
toInt64 类似,此函数会将输入值转换为 Int64 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则发生错误时返回 0。
语法
Int64
示例
成功转换
Query
Response
Query
Response
toInt64OrNull
toInt64 类似,此函数将输入值转换为 Int64 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt64OrNull('0xc0fe');。
如果输入值超出 Int64 的表示范围,结果会发生上溢或下溢。
这不视为错误。
x— 数值的字符串表示形式。String
Int64 类型的值;如果转换失败,则返回 NULL。Int64 或 NULL
示例
使用示例
Query
Response
toInt64OrZero
0。
与 toInt64 类似,不过它会返回 0,而不是抛出异常。
另请参见:
语法
0。Int64
示例
使用示例
Query
Response
Query
Response
toInt8
Int8 类型的值。
出错时会抛出异常。
支持的参数:
(U)Int*类型的值或其字符串表示形式。Float*类型的值。
Float*值的字符串表示形式,包括NaN和Inf。- 二进制和十六进制值的字符串表示形式,例如
SELECT toInt8('0xc0fe');。
如果输入值超出 Int8 的表示范围,结果会发生上溢或下溢。
这不视为错误。
例如:
SELECT toInt8(128) == -128;。此函数使用向零舍入,即会截去数字的小数位。
expr— 返回数值或数值的字符串表示形式的表达式。表达式
Int8
示例
使用示例
Query
Response
toInt8OrDefault
toInt8 类似,此函数会将输入值转换为 Int8 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
Int8 类型的值;否则,如果传入了默认值,则返回该默认值;如果未传入,则返回 0。Int8
示例
转换成功
Query
Response
Query
Response
toInt8OrNull
toInt8 类似,此函数会将输入值转换为 Int8 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制值和十六进制值的字符串表示形式,例如
SELECT toInt8OrNull('0xc0fe');。
如果输入值无法在 Int8 的范围内表示,结果会发生上溢或下溢。
这不视为错误。
x— 数值的 String 字符串表示形式。String
Int8 类型的值;如果转换失败,则返回 NULL。Int8 或 NULL
示例
使用示例
Query
Response
toInt8OrZero
toInt8 类似,此函数会将输入值转换为 Int8 类型的值,但如果出错则返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toInt8OrZero('0xc0fe');。
如果输入值超出 Int8 的表示范围,结果会发生上溢或下溢。
这不视为错误。
x— 数值的 String 字符串表示形式。String
0。Int8
示例
使用示例
Query
Response
toInterval
toIntervalSecond、toIntervalMinute、toIntervalDay 等特定类型的函数,
但允许通过字符串参数动态指定单位。
语法
value— 表示单位数量的数值,可为任意数值类型。Int8或Int16或Int32或Int64或UInt8或UInt16或UInt32或UInt64或Float32或Float64unit— 时间单位。必须为常量字符串。有效值:‘nanosecond’、‘microsecond’、‘millisecond’、‘second’、‘minute’、‘hour’、‘day’、‘week’、‘month’、‘quarter’、‘year’。String
unit:IntervalNanosecond、IntervalMicrosecond、IntervalMillisecond、IntervalSecond、IntervalMinute、IntervalHour、IntervalDay、IntervalWeek、IntervalMonth、IntervalQuarter 或 IntervalYear。Interval
示例
创建不同单位的时间间隔
Query
Response
Query
Response
Query
Response
toIntervalDay
n 天组成、数据类型为 IntervalDay 的时间间隔。
语法
n 天的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalHour
n 小时的时间间隔,数据类型为 IntervalHour。
语法
n 小时的时间间隔。Interval
示例
用法示例
Query
Response
toIntervalMicrosecond
n 微秒组成的时间间隔,数据类型为 IntervalMicrosecond。
语法
n 微秒构成的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalMillisecond
n 毫秒的时间间隔,数据类型为 IntervalMillisecond。
语法
n 毫秒的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalMinute
n 分钟的时间间隔,数据类型为 IntervalMinute。
语法
n 分钟的时间间隔。Interval
示例
用法示例
Query
Response
toIntervalMonth
n 个月的时间间隔,数据类型为 IntervalMonth。
语法
n 个月的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalNanosecond
n 纳秒的时间间隔,数据类型为 IntervalNanosecond。
语法
n 纳秒的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalQuarter
n 个季度组成、数据类型为 IntervalQuarter 的时间间隔。
语法
n 个季度的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalSecond
n 秒构成、数据类型为 IntervalSecond 的时间间隔。
语法
n 秒的时间间隔。Interval
示例
使用示例
Query
Response
toIntervalWeek
n 周的时间间隔,数据类型为 IntervalWeek。
语法
n 周的时间间隔。Interval
示例
用法示例
Query
Response
toIntervalYear
n 年的时间间隔,数据类型为 IntervalYear。
语法
n 年的时间间隔。Interval
示例
使用示例
Query
Response
toLowCardinality
LowCardinality 数据类型后的输入值。LowCardinality
示例
使用示例
Query
Response
toString
String
示例
使用示例
Query
Response
toStringCutToZero
s— 要处理的 String 或 FixedString。String或FixedString
String
示例
使用示例
Query
Response
toTime
x— 要转换的输入值。String或FixedString或DateTime或(U)Int*或Float*
Time
示例
String 转换为 Time
Query
Response
Query
Response
Query
Response
toTime64
x— 要转换的输入值。String或FixedString或DateTime64或(U)Int*或Float*
Time64(6)
示例
String 转换为 Time64
Query
Response
Query
Response
Query
Response
toTime64OrNull
Time64 类型的值;如果发生错误,则返回 NULL。
与 toTime64 类似,但在转换出错时会返回 NULL,而不是抛出异常。
另请参见:
语法
x— 具有子秒级精度的时间字符串表示形式。String
Time64 值,否则返回 NULL。Time64 或 NULL
示例
用法示例
Query
Response
toTime64OrZero
00:00:00.000。
与 toTime64 类似,但在转换出错时会返回 00:00:00.000,而不是抛出异常。
语法
x— 具有子秒级精度的时间字符串表示形式。String
00:00:00.000。Time64
示例
用法示例
Query
Response
toTimeOrNull
NULL。
与 toTime 类似,但在转换出错时会返回 NULL,而不是抛出异常。
另请参见:
语法
x— 时间的字符串表示形式。String
Time 值,否则返回 NULL。Time 或 NULL
示例
使用示例
Query
Response
toTimeOrZero
Time 类型的值;如果出错,则返回 00:00:00。
与 toTime 类似,但在转换出错时会返回 00:00:00,而不是抛出异常。
Syntax
x— 时间的字符串表示形式。String
00:00:00。Time
示例
使用示例
Query
Response
toUInt128
UInt128 类型的值。
出错时会抛出异常。
该函数采用向零舍入,即会截断数字的小数位。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt128('0xc0fe');。
如果输入值超出 UInt128 的表示范围,结果会发生上溢或下溢。
这不被视为错误。
expr— 返回数值或数值字符串表示形式的表达式。表达式
UInt128
示例
用法示例
Query
Response
toUInt128OrDefault
toUInt128 类似,此函数会将输入值转换为 UInt128 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
UInt128
示例
转换成功
Query
Response
Query
Response
toUInt128OrNull
toUInt128 类似,此函数将输入值转换为 UInt128 类型的值,但在发生错误时会返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt128OrNull('0xc0fe');。
如果输入值无法在
UInt128 的取值范围内表示,则结果会发生上溢或下溢。
这不视为错误。x— 数字的 String 表示形式。String
NULL。UInt128 或 NULL
示例
使用示例
Query
Response
toUInt128OrZero
toUInt128 类似,此函数会将输入值转换为 UInt128 类型的值,但如果发生错误则返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt128OrZero('0xc0fe');。
如果输入值超出
UInt128 的表示范围,结果会发生上溢或下溢。
这不视为错误。x— 数字的 String 表示形式。String
0。UInt128
示例
使用示例
Query
Response
toUInt16
UInt16 类型的值。
发生错误时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt16('0xc0fe');。
如果输入值无法在
UInt16 的取值范围内表示,则结果会发生上溢或下溢。
这不视为错误。
例如:SELECT toUInt16(65536) == 0;。该函数使用向零舍入,即会截断数字的小数位。
expr— 返回数值或数值的字符串表示形式的表达式。表达式
UInt16
示例
使用示例
Query
Response
toUInt16OrDefault
toUInt16 类似,此函数会将输入值转换为 UInt16 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
Syntax
UInt16 类型的值;否则,如果传入了默认值则返回该默认值,未传入则返回 0。UInt16
示例
转换成功
Query
Response
Query
Response
toUInt16OrNull
toUInt16 类似,此函数会将输入值转换为 UInt16 类型的值,但如果发生错误则返回 NULL。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt16OrNull('0xc0fe');。
如果输入值超出
UInt16 的表示范围,则结果会发生上溢或下溢。
这不视为错误。x— 数字的 String 表示形式。String
UInt16 类型的值;如果转换失败,则返回 NULL。UInt16 或 NULL
示例
使用示例
Query
Response
toUInt16OrZero
toUInt16 类似,此函数将输入值转换为 UInt16 类型的值,但在发生错误时会返回 0。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt16OrZero('0xc0fe');。
如果输入值超出了
UInt16 的可表示范围,则结果会发生上溢或下溢。
这不视为错误。x— 数值的字符串表示形式。String
0。UInt16
示例
使用示例
Query
Response
toUInt256
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt256('0xc0fe');。
如果输入值无法在 UInt256 的取值范围内表示,结果会发生上溢或下溢。
这不被视为错误。
expr— 返回数值或数值字符串表示形式的表达式。Expression
UInt256
示例
使用示例
Query
Response
toUInt256OrDefault
toUInt256 类似,此函数会将输入值转换为 UInt256 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则在发生错误时返回 0。
语法
UInt256
示例
转换成功
Query
Response
Query
Response
toUInt256OrNull
toUInt256 类似,此函数会将输入值转换为 UInt256 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制值和十六进制值的字符串表示形式,例如
SELECT toUInt256OrNull('0xc0fe');。
如果输入值超出
UInt256 的表示范围,则结果会发生上溢或下溢。
这不视为错误。x— 数字的字符串表示形式。String
UInt256 类型的值;如果转换失败,则返回 NULL。UInt256 或 NULL
示例
使用示例
Query
Response
toUInt256OrZero
toUInt256 类似,此函数会将输入值转换为 UInt256 类型的值,但如果发生错误,则返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt256OrZero('0xc0fe');。
如果输入值超出
UInt256 的可表示范围,结果会发生上溢或下溢。
这不视为错误。x— 数值的 String 字符串表示形式。String
0。UInt256
示例
使用示例
Query
Response
toUInt32
UInt32 类型的值。
如果出错,则会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制值和十六进制值的字符串表示形式,例如
SELECT toUInt32('0xc0fe');。
如果输入值无法用
UInt32 的取值范围表示,结果会发生上溢或下溢。
这不视为错误。
例如:SELECT toUInt32(4294967296) == 0;该函数使用向零舍入,即会截去数字的小数位。
expr— 返回数值或数值字符串表示形式的表达式。Expression
UInt32
示例
用法示例
Query
Response
toUInt32OrDefault
toUInt32 类似,此函数会将输入值转换为 UInt32 类型的值,但发生错误时会返回默认值。
如果未传入 default 值,则发生错误时返回 0。
Syntax
UInt32 类型的值;否则,如果传入了默认值则返回该默认值,未传入则返回 0。UInt32
示例
转换成功
Query
Response
Query
Response
toUInt32OrNull
toUInt32 类似,此函数会将输入值转换为 UInt32 类型的值,但如果发生错误,则返回 NULL。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt32OrNull('0xc0fe');。
如果输入值无法在
UInt32 的范围内表示,则结果会发生上溢或下溢。
这不视为错误。x— 数值的 String 字符串表示形式。String
UInt32 类型的值;如果转换失败,则返回 NULL。UInt32 或 NULL
示例
使用示例
Query
Response
toUInt32OrZero
toUInt32 类似,此函数会将输入值转换为 UInt32 类型的值,但如果发生错误,则返回 0。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt32OrZero('0xc0fe');。
如果输入值无法在
UInt32 的取值范围内表示,则结果会发生上溢或下溢。
这不视为错误。x— 数值的 String 表示形式。String
0。UInt32
示例
使用示例
Query
Response
toUInt64
UInt64 类型的值。
发生错误时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt64('0xc0fe');。
如果输入值超出
UInt64 的取值范围,结果会发生上溢或下溢。
这不视为错误。
例如:SELECT toUInt64(18446744073709551616) == 0;该函数使用向零舍入,即会截断数字的小数位。
expr— 返回数字或数字的字符串表示形式的表达式。Expression
UInt64
示例
使用示例
Query
Response
toUInt64OrDefault
toUInt64 类似,此函数会将输入值转换为 UInt64 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则发生错误时返回 0。
语法
UInt64
示例
转换成功
Query
Response
Query
Response
toUInt64OrNull
toUInt64 类似,此函数会将输入值转换为 UInt64 类型的值,但如果发生错误则返回 NULL。
支持的参数:
- (U)Int* 的字符串表示形式。
NULL) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt64OrNull('0xc0fe');。
如果输入值无法在
UInt64 的范围内表示,结果会发生上溢或下溢。
这不视为错误。x— 数值的 String 字符串表示形式。String
UInt64 类型的值;如果转换失败,则返回 NULL。UInt64 或 NULL
示例
使用示例
Query
Response
toUInt64OrZero
toUInt64 类似,此函数会将输入值转换为 UInt64 类型的值,但如果发生错误,则返回 0。
支持的参数:
- (U)Int* 的字符串表示形式。
0) :
- Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt64OrZero('0xc0fe');。
如果输入值无法表示在
UInt64 的范围内,结果会发生上溢或下溢。
这不视为错误。x— 数字的字符串表示形式。String
UInt64 类型的值;如果转换失败,则返回 0。UInt64
示例
使用示例
Query
Response
toUInt8
UInt8 类型的值。
发生错误时会抛出异常。
支持的参数:
- (U)Int* 类型的值或其字符串表示形式。
- Float* 类型的值。
- Float* 类型值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt8('0xc0fe');。
如果输入值无法在 UInt8 的范围内表示,结果会发生上溢或下溢。
这不视为错误。
例如:
SELECT toUInt8(256) == 0;。该函数采用向零舍入,即截断数字的小数位。
expr— 返回数字或数字的字符串表示形式的表达式。Expression
UInt8
示例
使用示例
Query
Response
toUInt8OrDefault
toUInt8 类似,此函数会将输入值转换为 UInt8 类型的值,但如果发生错误,则返回默认值。
如果未传入 default 值,则发生错误时返回 0。
Syntax
UInt8 类型的值;否则,如果传入了默认值,则返回该默认值;如果未传入,则返回 0。UInt8
示例
转换成功
Query
Response
Query
Response
toUInt8OrNull
toUInt8 类似,此函数将输入值转换为 UInt8 类型的值,但在出错时返回 NULL。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
NULL) :
- 普通 Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt8OrNull('0xc0fe');。
如果输入值无法在
UInt8 的取值范围内表示,则结果会发生上溢或下溢。
这不视为错误。x— 数字的 String 字符串表示形式。String
NULL。UInt8 或 NULL
示例
使用示例
Query
Response
toUInt8OrZero
toUInt8 类似,此函数将输入值转换为 UInt8 类型的值,但在发生错误时返回 0。
支持的参数:
- (U)Int8/16/32/128/256 的字符串表示形式。
0) :
- 普通 Float* 值的字符串表示形式,包括
NaN和Inf。 - 二进制和十六进制值的字符串表示形式,例如
SELECT toUInt8OrZero('0xc0fe');。
如果输入值超出
UInt8 的表示范围,则结果会发生上溢或下溢。
这不视为错误。x— 数字的 String 字符串表示形式。String
0。UInt8
示例
用法示例
Query
Response
toUUID
string— 字符串形式的 UUID。String或FixedString
UUID
示例
使用示例
Query
Response
toUUIDOrZero
toUUID 类似,但在转换出错时会返回零 UUID (00000000-0000-0000-0000-000000000000) ,而不是抛出异常。
支持的参数:
- 标准格式 UUID 的字符串表示形式 (8-4-4-4-12 个十六进制数字) 。
- 不带连字符的 UUID 字符串表示形式 (32 个十六进制数字) 。
- 无效的字符串格式。
- 非字符串类型。
x— UUID 的字符串表示形式。String
00000000-0000-0000-0000-000000000000) 。UUID
示例
使用示例
Query
Response
toUnixTimestamp64Micro
DateTime64 转换为具有固定微秒精度的 Int64 值。
输入值会根据其精度相应地进行放大或缩小。
输出值以 UTC 为基准,而不是以输入值的时区为基准。
value— 任意精度的 DateTime64 类型值。DateTime64
Int64
示例
使用示例
Query
Response
toUnixTimestamp64Milli
DateTime64 转换为具有固定毫秒精度的 Int64 值。
输入值会根据其精度按相应比例放大或缩小。
输出值是相对于 UTC 的,而不是相对于输入值的时区。
value— 具有任意精度的 DateTime64 值。DateTime64
Int64
示例
用法示例
Query
Response
toUnixTimestamp64Nano
DateTime64 转换为具有固定纳秒精度的 Int64 值。
输入值会根据其精度相应放大或缩小。
输出值是相对于 UTC 的,而不是相对于输入值的时区。
value— 任意精度的 DateTime64 值。DateTime64
Int64
示例
使用示例
Query
Response
toUnixTimestamp64Second
DateTime64 转换为具有固定秒级精度的 Int64 值。
输入值会根据其精度相应按比例放大或缩小。
输出值是相对于 UTC 的,而不是相对于输入值的时区。
value— 任意精度的 DateTime64 类型值。DateTime64
Int64
示例
使用示例
Query
Response