MySQL - 今日日期

你好,有志於數據庫的愛好者們!今天,我們將要進入MySQL中日期的精彩世界。作為你們親切友善的計算機科學老師,我在這裡指導你們如何使用MySQL中的今日日期。別擔心你們之前從未寫過一行代碼——我們將從最基本的開始,然後逐步學習。所以,拿起你們的虛擬筆記本,讓我們開始吧!

MySQL - Today Date

MySQL 今日日期

MySQL中今日的日期是什麼?

在MySQL中,“今日日期”指的是根據數據庫服務器系統時鐘的當前日期。這就像問你的電腦,“嘿,今天星期幾?”然後得到一個準確的答案。這可能看起來很簡單,但在許多數據庫應用程序中非常有用。

如何獲取今日日期

MySQL提供了多種函數來獲取當前日期。讓我們看看最常見的一些:

函數 描述 示例輸出
CURDATE() 返回當前日期 2023-05-15
CURRENT_DATE() CURDATE()的同義詞 2023-05-15
CURRENT_DATE CURDATE()的同義詞 2023-05-15
NOW() 返回當前日期和時間 2023-05-15 14:30:00

讓我們試一試!這裡有一個簡單的查詢來獲取今日日期:

SELECT CURDATE() AS Today;

這將返回類似於以下內容:

+------------+
| Today      |
+------------+
| 2023-05-15 |
+------------+

酷炫吧?就像是你的數據庫中有一個內置的日曆!

格式化日期

有時候,你可能想要以不同的格式顯示日期。MySQL的DATE_FORMAT()函數可以幫助你。這是怎麼用的:

SELECT DATE_FORMAT(CURDATE(), '%W, %M %d, %Y') AS Formatted_Date;

這可能返回:

+-------------------------+
| Formatted_Date          |
+-------------------------+
| 星期一, 五月 15, 2023    |
+-------------------------+

“%W”, “%M”, “%d”, 和 “%Y” 是格式指定符,告訴MySQL如何顯示日期。這就像給朋友指導如何寫日期——“首先是星期幾,然後是月份,然後是日期數字,最後是年份。”

在表中插入日期值

現在我們知道如何獲取今日日期,讓我們看看如何在現實世界場景中使用它。假設我們正在建立一個圖書館數據庫,並且我們想要記錄圖書借出的時間。

首先,讓我們創建一個簡單的表:

CREATE TABLE book_loans (
id INT AUTO_INCREMENT PRIMARY KEY,
book_title VARCHAR(100),
borrow_date DATE
);

這創建了一個有三個列的表:ID、書名和借出日期。現在,讓我們使用今日日期插入一條記錄:

INSERT INTO book_loans (book_title, borrow_date)
VALUES ('The MySQL Adventurer', CURDATE());

這將插入一條新記錄,將當前日期作為借出日期。這就像在日記本上寫道:“有人今天借了'The MySQL Adventurer'。”

我們可以通过選擇表中的數據來檢查我們的工作:

SELECT * FROM book_loans;

你可能会看到類似於以下內容:

+----+----------------------+------------+
| id | book_title           | borrow_date|
+----+----------------------+------------+
|  1 | The MySQL Adventurer | 2023-05-15 |
+----+----------------------+------------+

使用客戶端程序獲取今日日期

當你通過客戶端程序(如MySQL命令行客戶端)使用MySQL時,你也可以使用NOW()函數來獲取當前日期和時間。這裡有一個快速示例:

SELECT NOW() AS Current_DateTime;

這將給你類似於以下內容:

+---------------------+
| Current_DateTime    |
+---------------------+
| 2023-05-15 15:30:45 |
+---------------------+

這就像問你的手錶要日期和時間!

實際應用:計算年齡

讓我們將我們的知識應用於一個實際示例。假設我們想根據某人的出生日期來計算他們的年齡。我們可以使用DATEDIFF()函數以及CURDATE():

SELECT
'John Doe' AS Name,
'1990-05-15' AS Birthdate,
FLOOR(DATEDIFF(CURDATE(), '1990-05-15') / 365) AS Age;

這個查詢可能返回:

+----------+------------+------+
| Name     | Birthdate  | Age  |
+----------+------------+------+
| John Doe | 1990-05-15 |   33 |
+----------+------------+------+

在這裡,我們計算出生日期和今日之間的天數,然後除以365來得到年齡。這就像數生日蛋糕上的蠟燭,但更快!

結論

好了,各位!我們已經在MySQL的日期領域中進行了一次旅行,從獲取今日日期到在實際場景中應用它。記住,處理日期可能最初看起來有些棘手,但隨著練習,它會變得習以為常。

在我們結束之前,這裡有一個數據庫幽默給你們:為什麼數據庫管理員離開了他的妻子?他想開始一段新關係!(砰!)

繼續練習,保持好奇心,在你還沒有意識到之前,你將會像專家一樣處理MySQL中的日期。下次見,快樂編程!

Credits: Image by storyset