目录
1、MySQL数据库
DATE_FORMAT() 函数
# 示例
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S')
食用方法如下:
# DATE_FORMAT(d, f)
d = date 表示是日期,传一个日期参数即可,f = format 表示日期的格式
表1. 常用的点位符号
点位符(区分大小写) | 解释 |
---|---|
%Y / %y | 年,由4位数表示(例如 2020)/ 也表示年,不过只显示后两位数(例如:2021会被表示为 21) |
%M / %m | 输出是月份的英文单词缩写,(例如:7月则为 July)/ 用数字表示月份,两位数,个位数月份有前导 0,范围从 00-12 |
%D / %d / %e | 日期的英文单词缩写,(例如:5日则为 5th)/ 用数字表示日期,两位数,个位数日期有前导 0,范围从 00-31 / 输出也是数字,和前一种形式唯一区别就是个位数日期没有前导 0 |
%H / %h / %I(大写i) | 小时,范围 00-23,标准的 24 小时 / 也表示小时,但是只有 12 个小时,范围 01-12 / 和前一种输出完全一,很容易和分钟的点位符搞混 |
%i | 分钟的点位符号,数值范围 00-59 |
%S / %s | 秒,数值范围 00-59 / 和前一种输出结果完全一致 |
表2. 其他点位符
点位符(区分大小写) | 解释 |
%W / %a | 日期的英文单词(例如 2022-07-05 输出 2022-07-Wednesday)/ 日期的英文单词缩写(和前一种情况对比的话,Wednesday 会输出为 Wed) |
%b / %c | 月份的英文单词缩写(例如7月会输出为Jul)/ 用数字表示月份和 %e 的输出效果是一样的,没有前导 0 |
%f | 微秒,可以放在 %s 之后使用 |
%j | 用天数表示年(例如:2022-07-06 会输出为 2022-07-187 表示是2022年第187天) |
%k / %l(小写L) | 表示小时,范围 0-23 / 也表示小时,但是只有 12 个小时,范围1-12 |
%p | 上午的时间会输出AM,下午的时间会输出PM |
2、PostgreSQL、Oracle、人大金仓
使用 TO_CHAR() + TO_DATE() 函数或者直接使用 TO_DATE() 函数也可
# 示例
SELECT TO_CHAR(TO_DATE(NOW(),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd')
食用方法如下:
TO_CHAR(TO_DATE(d,f),f)
d = date 表示是日期,传一个日期参数即可,f = format 表示日期的格式, 一般的数据格式是 yyyy-mm-dd hh24:mi:ss 格式的,可以通过 TO_CHAR() 函数转为 yyyy-mm-dd 格式的时间,也可以修改数据库字段,如果可以修改的话,物理类型改为 date 就行