自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL 的時(shí)間函數(shù)有哪些?如何使用?

數(shù)據(jù)庫 MySQL
本文我們分析了 MySQL 中常用的日期和時(shí)間函數(shù),它們在日常工作中有廣泛的使用,不過在使用中我們需要注意以下兩點(diǎn).。

在 MySQL中,提供了很多日期和時(shí)間函數(shù),那么,在實(shí)際工作中,我們該如何選擇?這篇文章,我們一起來聊一聊。

從整體上看,MySQL的日期和時(shí)間函數(shù)可以分為六大類:獲取當(dāng)前日期和時(shí)間、提取日期和時(shí)間的特定部分、格式化日期和時(shí)間、日期和時(shí)間的算術(shù)操作、提取日期的部分和Unix 時(shí)間戳相關(guān)函數(shù)等。

1. 獲取當(dāng)前日期和時(shí)間

獲取當(dāng)前日期和時(shí)間的函數(shù)包含以下幾個(gè)常用函數(shù):

(1) NOW() / CURRENT_TIMESTAMP

作用:返回當(dāng)前的日期和時(shí)間。

示例:

SELECT NOW();
-- 輸出格式例如:2025-01-05 14:30:00

(2) CURDATE() / CURRENT_DATE

作用:返回當(dāng)前的日期。

示例:

SELECT CURDATE();
-- 輸出格式例如:2025-01-05

(3) CURTIME() / CURRENT_TIME

作用:返回當(dāng)前的時(shí)間。

示例:

SELECT CURTIME();
-- 輸出格式例如:14:30:00

2. 提取日期和時(shí)間的特定部分

提取日期和時(shí)間的特定部分的常用函數(shù)包含以下幾個(gè):

(1) YEAR(date)

作用:提取年份。

示例:

SELECT YEAR('2025-01-25');
-- 輸出:2023

(2) MONTH(date)

作用:提取月份。

示例:

SELECT MONTH('2025-01-25');
-- 輸出:10

(3) DAY(date)

作用:提取日期中的天。

示例:

SELECT DAY('2025-01-25');
-- 輸出:5

(4) HOUR(time)、MINUTE(time)、SECOND(time)

作用:分別提取時(shí)間中的小時(shí)、分鐘和秒。

示例:

SELECT HOUR('14:30:00'), MINUTE('14:30:00'), SECOND('14:30:00');
-- 輸出:14  30  00

3. 格式化日期和時(shí)間

格式化日期和時(shí)間的常用函數(shù)包含以下幾個(gè):

(1) DATE_FORMAT(date, format)

作用:按照指定格式格式化日期/時(shí)間。

常用格式符:

  • %Y 年份(四位)
  • %m 月份(兩位)
  • %d 日(兩位)
  • %H 小時(shí)(24小時(shí)制)
  • %i 分鐘
  • %s 秒

示例:

SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H:%i:%s');
-- 輸出格式例如:2025年01月15日 14:30:00

(2) STR_TO_DATE(string, format)

作用:將字符串按照指定格式轉(zhuǎn)換為日期/時(shí)間類型。

示例:

SELECT STR_TO_DATE('15-01-2025', '%d-%m-%Y');
-- 輸出:2025-01-25

4. 日期和時(shí)間的算術(shù)操作

(1) DATE_ADD(date, INTERVAL expr unit)

作用:在日期上添加指定的時(shí)間間隔。

示例:

SELECT DATE_ADD('2025-01-15', INTERVAL 10 DAY);
-- 輸出:2025-01-25

(2) DATE_SUB(date, INTERVAL expr unit)

作用:從日期中減去指定的時(shí)間間隔。

示例:

SELECT DATE_SUB('2025-03-25', INTERVAL 2 MONTH);
-- 輸出:2025-01-25

(3) DATEDIFF(date1, date2)

作用:返回兩個(gè)日期之間的天數(shù)差異。

示例:

SELECT DATEDIFF('2025-01-25', '2025-01-15');
-- 輸出:10

(4) TIMESTAMPDIFF(unit, datetime1, datetime2)

作用:返回兩個(gè)日期之間指定單位的差異。

單位包括:SECOND、MINUTE、HOUR、DAY、MONTH、YEAR 等。

示例:

SELECT TIMESTAMPDIFF(DAY, '2025-01-15', '2025-01-25');
-- 輸出:10
SELECT TIMESTAMPDIFF(HOUR, '2025-01-25 10:00:00', '2025-01-25 14:30:00');
-- 輸出:4

5. 提取日期的部分

(1) EXTRACT(part FROM date)

作用:提取日期或時(shí)間的特定部分。

可提取部分:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND 等。

示例:

SELECT EXTRACT(YEAR FROM '2025-01-25'), EXTRACT(MONTH FROM '2025-01-25');
-- 輸出:2025  01

6. Unix 時(shí)間戳相關(guān)函數(shù)

(1) UNIX_TIMESTAMP()

作用:返回當(dāng)前時(shí)間的 Unix 時(shí)間戳(秒數(shù))。

示例:

SELECT UNIX_TIMESTAMP();
-- 輸出:例如 1696453800

(2) FROM_UNIXTIME(unix_timestamp, format)

作用:將 Unix 時(shí)間戳轉(zhuǎn)換為日期和時(shí)間格式。

示例:

SELECT FROM_UNIXTIME(1696453800, '%Y-%m-%d %H:%i:%s');
-- 輸出:2025-01-25 14:30:00

7. 總結(jié)

本文我們分析了 MySQL 中常用的日期和時(shí)間函數(shù),它們在日常工作中有廣泛的使用,不過在使用中我們需要注意以下兩點(diǎn):

  • 日期格式:確保日期和時(shí)間的格式符合 MySQL 的標(biāo)準(zhǔn)格式(如 YYYY-MM-DD 或 YYYY-MM-DD HH:MM:SS),否則可能導(dǎo)致函數(shù)解析錯(cuò)誤。
  • 時(shí)區(qū)設(shè)置:NOW() 和相關(guān)函數(shù)受服務(wù)器時(shí)區(qū)設(shè)置影響,確保時(shí)區(qū)配置正確以獲取準(zhǔn)確的時(shí)間。
責(zé)任編輯:趙寧寧 來源: 猿java
相關(guān)推薦

2024-11-01 06:00:00

2024-12-23 15:58:38

2023-11-19 23:13:56

Kotlin作用域函數(shù)

2010-10-11 16:35:54

MySql時(shí)間函數(shù)

2023-03-11 22:22:04

數(shù)據(jù)庫MySQL

2010-11-25 11:01:33

MySQL日期函數(shù)

2014-11-07 10:05:38

OSPFLSA

2010-05-06 15:44:08

Oracle Nvl函

2010-06-03 09:39:24

優(yōu)化MySQL性能

2022-03-09 09:39:22

Python函數(shù)模塊

2022-03-21 21:55:43

Python編程語言

2022-11-24 13:55:47

React類組件

2010-10-09 16:18:43

MYSQL IFNUL

2010-10-11 15:08:44

MySQL conca

2010-10-11 16:23:35

MYSQL BENCH

2010-06-13 15:42:37

MySQL性能優(yōu)化

2010-05-27 13:26:20

MySQL日期時(shí)間函數(shù)

2024-12-31 07:56:33

Disruptor內(nèi)存有界隊(duì)列消費(fèi)模式

2009-02-24 16:17:41

日期時(shí)間函數(shù)

2010-05-31 10:35:12

MySQL數(shù)據(jù)類型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)