MariaDB 函数

MariaDB UNIX_TIMESTAMP() 函数返回一个 Unix 时间戳,表示自 '1970-01-01 00:00:00' UTC 以来的秒数。如果未提供 datetime 参数,该函数将返回当前 Unix 时间戳。如果提供了datetime参数,它将返回指定datetime的Unix时间戳。

datetime参数可以是DATE、DATETIME、TIMESTAMP 字符串或 YYMMDD、YYMMDDhhmmss、YYYYMMDD 或 YYYYMMDDhhmmss 格式的数字。

语法

UNIX_TIMESTAMP(datetime) 

参数

datetime可选。 指定 DATE、DATETIME、TIMESTAMP 字符串或 YYMMDD、YYMMDDhhmmss、YYYYMMDD 或 YYYYMMDDhhmmss 格式的数字。如果未提供,则使用当前时间戳。

返回值

返回 Unix 时间戳。

示例1:

下面的示例显示了 UNIX_TIMESTAMP() 函数的用法。

SELECT UNIX_TIMESTAMP();
Result: 1641883574

SELECT UNIX_TIMESTAMP('2019-10-25');
Result: 1571961600

SELECT UNIX_TIMESTAMP('2019-10-25 08:10:25');
Result: 1571991025

SELECT UNIX_TIMESTAMP(20191025);
Result: 1571961600

SELECT UNIX_TIMESTAMP(20191025081025);
Result: 1571991025

SELECT UNIX_TIMESTAMP(NULL);
Result: NULL 

示例 2:

考虑一个名为 Sample 的数据库表,其中包含以下记录:

DataLoginStamp
Data 12019-10-25 09:20:38
Data 22019-10-25 09:21:05
Data 32019-10-25 09:24:35
Data 42019-10-25 09:25:24
Data 52019-10-25 09:27:16

下面给出的语句可用于将 LoginStamp 列的记录转换为 Unix 时间戳.

SELECT *, UNIX_TIMESTAMP(LoginStamp) AS UNIX_TIMESTAMP_Value FROM Sample; 

这将产生如下所示的结果:

DataLoginStampUNIX_TIMESTAMP_Value
Data 12019-10-25 09:20:381571995238
Data 22019-10-25 09:21:051571995265
Data 32019-10-25 09:24:351571995475
Data 42019-10-25 09:25:241571995524
Data 52019-10-25 09:27:161571995636