MariaDB FROM_UNIXTIME() 函数的基础用法与实例
MariaDB FROM_UNIXTIME()
函数是一个日期和时间函数,它可以将一个 Unix 时间戳(以秒为单位的整数)转换为一个日期时间值。
MariaDB FROM_UNIXTIME()
函数是一个日期和时间函数,它可以将一个 Unix 时间戳(以秒为单位的整数)转换为一个日期时间值。Unix 时间戳是指从 1970 年 1 月 1 日(UTC)开始经过的秒数。FROM_UNIXTIME()
函数可以用于将 Unix 时间戳转换为人类可读的格式,或者用于与其他日期时间函数进行计算或比较。
语法
FROM_UNIXTIME()
函数的语法如下:
FROM_UNIXTIME(unix_timestamp, [format])
其中,unix_timestamp
是一个 Unix 时间戳,必须是一个整数或可以转换为整数的表达式。如果 unix_timestamp
为 NULL
,则函数返回 NULL
。
format
是一个可选的参数,用于指定返回的日期时间值的格式。format
必须是一个字符串,可以包含以下占位符:
占位符 | 含义 |
---|---|
%a | 星期名的缩写(Sun..Sat) |
%b | 月份名的缩写(Jan..Dec) |
%c | 月份,数值(0..12) |
%D | 带有英文后缀的月份中的天(1st, 2nd, 3rd, 等等) |
%d | 月份中的天,数值(00..31) |
%e | 月份中的天,数值(0..31) |
%f | 微秒(000000..999999) |
%H | 小时(00..23) |
%h | 小时(01..12) |
%I | 小时(01..12) |
%i | 分钟,数值(00..59) |
%j | 年份中的天(001..366) |
%k | 小时(0..23) |
%l | 小时(1..12) |
%M | 月份名(January..December) |
%m | 月份,数值(00..12) |
%p | AM 或 PM |
%r | 时间,12-小时(hh:mm:ss AM 或 PM) |
%S | 秒(00..59) |
%s | 秒(00..59) |
%T | 时间, 24-小时(hh:mm:ss) |
%U | 周(00..53),其中周日是周的第一天 |
%u | 周(00..53),其中周一是周的第一天 |
%V | 周(01..53),其中周日是周的第一天,与 %X 使用 |
%v | 周(01..53),其中周一是周的第一天,与 %x 使用 |
%W | 星期名(Sunday..Saturday) |
%w | 周的天数(0..6),其中 0 为周日 |
%X | 年,其中周日是周的第一天,4 位,与 %V 使用 |
%x | 年,其中周一是周的第一天,4 位,与 %v 使用 |
%Y | 年,4 位 |
%y | 年,2 位 |
如果省略 format
参数,或者 format
为 NULL
,则函数返回一个 DATETIME
类型的值,格式为 YYYY-MM-DD hh:mm:ss
。如果 format
包含非法的占位符,或者与 unix_timestamp
不匹配的占位符,则函数返回 NULL
。
实例
以下是一些使用 FROM_UNIXTIME()
函数的实例。
将 Unix 时间戳转换为默认的日期时间格式
SELECT FROM_UNIXTIME(1614087600);
输出:
2021-02-23 21:40:00
这个实例将一个 Unix 时间戳 1614087600
转换为默认的日期时间格式 YYYY-MM-DD hh:mm:ss
。
将 Unix 时间戳转换为指定的日期时间格式
SELECT FROM_UNIXTIME(1614087600, '%Y年%m月%d日 %H时%i分%s秒');
输出:
2021年02月23日 21时40分00秒
这个实例将一个 Unix 时间戳 1614087600
转换为指定的日期时间格式 %Y年%m月%d日 %H时%i分%s秒
。
将 Unix 时间戳转换为只包含日期的格式
SELECT FROM_UNIXTIME(1614087600, '%Y-%m-%d');
输出:
2021-02-23
这个实例将一个 Unix 时间戳 1614087600
转换为只包含日期的格式 %Y-%m-%d
。
将 Unix 时间戳转换为只包含时间的格式
SELECT FROM_UNIXTIME(1614087600, '%T');
输出:
21:40:00
这个实例将一个 Unix 时间戳 1614087600
转换为只包含时间的格式 %T
。
将 Unix 时间戳转换为带有微秒的格式
SELECT FROM_UNIXTIME(1614087600.123456, '%Y-%m-%d %H:%i:%s.%f');
输出:
2021-02-23 21:40:00.123456
这个实例将一个 Unix 时间戳 1614087600.123456
转换为带有微秒的格式 %Y-%m-%d %H:%i:%s.%f
。
相关函数
以下是一些与 FROM_UNIXTIME()
函数相关的函数:
UNIX_TIMESTAMP()
函数:将一个日期时间值转换为一个 Unix 时间戳。DATE_FORMAT()
函数:将一个日期时间值按照指定的格式进行格式化。STR_TO_DATE()
函数:将一个字符串按照指定的格式转换为一个日期时间值。
结论
MariaDB FROM_UNIXTIME()
函数是一个有用的函数,它可以将一个 Unix 时间戳转换为一个日期时间值,或者按照指定的格式进行格式化。它可以用于将 Unix 时间戳转换为人类可读的格式,或者用于与其他日期时间函数进行计算或比较。