更新时间:2024-11-08 GMT+08:00

unix_timestamp

unix_timestamp函数用于将日期值转化为数字型的UNIX格式的日期值。

函数返回值将返回正常UNIX格式时间戳前十位。

命令格式

unix_timestamp(string timestamp, string pattern)

参数说明

表1 参数说明

参数

是否必选

参数类型

说明

timestamp

DATE或STRING

代表待转换的日期值。

格式:

  • yyyy-mm-dd
  • yyyy-mm-dd hh:mi:ss
  • yyyy-mm-dd hh:mi:ss.ff3

pattern

STRING

代表需要转换的格式。

pattern为空时,默认为yyyy-MM-dd hh:mm:ss格式。

format:格式为代表年月日时分秒的时间单位与任意字符的组合,其中:

  • yyyy代表年份。
  • MM代表月份。
  • dd代表天。
  • hh代表小时。
  • mi代表分钟。
  • ss代表秒。

返回值说明

返回BIGINT类型的值。

  • timestamp值为NULL时,返回NULL。
  • timestamp和pattern都为空时,返回从“1970-01-01 00:00:00”到现在的秒数代表的时间戳。

示例代码

返回1692149997。

select unix_timestamp('2023-08-16 09:39:57')

假设当前系统时间为2023-08-16 10:23:16,返回1692152596。

select unix_timestamp();

返回1692115200(即2023-08-16 00:00:00)。

select unix_timestamp("2023-08-16 10:56:45", "yyyy-MM-dd");
表数据示例
select timestamp1, unix_timestamp(timestamp1) as date1_unix_timestamp, timestamp2, unix_timestamp(datetime1) as date2_unix_timestamp, timestamp3, unix_timestamp(timestamp1) as date3_unix_timestamp from database_t;输出:
+------------+-------------------------+-----------------------+---------------------- --+------------------------------------+----------------------------+
| timestamp1| date1_unix_timestamp | timestamp2              | date2_unix_timestamp | timestamp3                                  | date3_unix_timestamp      |
+------------+-------------------------+-----------------------+-------------------------+------------------------------------+----------------------------+
| 2023-08-02 | 1690905600000           | 2023-08-02 11:09:14 | 1690945754793           | 2023-01-11 00:00:00.123456789 | 1673366400000                |
| 2023-08-03 | 1690992000000           | 2023-08-02 11:09:31 | 1690945771994           | 2023-02-11 00:00:00.123456789 | 1676044800000                |
| 2023-08-04 | 1691078400000           | 2023-08-02 11:09:41 | 1690945781270           | 2023-03-11 00:00:00.123456789 | 1678464000000                |
| 2023-08-05 | 1691164800000           | 2023-08-02 11:09:48 | 1690945788874           | 2023-04-11 00:00:00.123456789 | 1681142400000                |
| 2023-08-06 | 1691251200000           | 2023-08-02 11:09:59 | 1690945799099           | 2023-05-11 00:00:00.123456789 | 1683734400000                |
+------------+-------------------------+-----------------------+--------------------------+-----------------------------------+----------------------------+