MySQL - 今日の日付

こんにちは、データベースの愛好家を目指す皆さん!今日は、MySQLにおける日付の世界に飛び込みます。あなたの近所の親切なコンピュータサイエンスの先生として、私は今日の日付をMySQLでどのように扱うかをガイドします。コードを書いたことがない人も心配しないでください - 最初から始めて、少しずつ進んでいきます。では、バーチャルなメモ padを準備して、始めましょう!

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          |
+-------------------------+
| Monday, May 15, 2023    |
+-------------------------+

'%W', '%M', '%d', '%Y'は日付の表示方法を指定するフォーマット指定子です。友人に日付の書き方を指示するのと同じです - 「まず曜日、次に月、次に日、そして最後に年」。

テーブルに日付値を插入する

今日の日付を取得する方法を知ったので、実際のシナリオでどのように使用するかを見てみましょう。図書館のデータベースを構築して、本の貸出日を追跡したいとします。

まず、シンプルなテーブルを作成します:

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