MySQLでYYYY-MM-DD形式の今日の日付を取得する方法
MySQLで(YYYY-MM-DD)形式の今日の日付を取得したい場合、CURDATE()関数を使うのが最も簡単な方法です。CURDATE()は現在の日付を「年-月-日」の形式で返してくれます。
CURDATE()関数で今日の日付を取得する
現在の日付を取得するには、以下のクエリを実行します。
mysql> SELECT CURDATE();
実行すると、次のような結果が出力されます。
+------------+ | CURDATE() | +------------+ | 2019-04-09 | +------------+ 1 row in set (0.00 sec)
なお、CURDATE()はCURRENT_DATE()およびCURRENT_DATEのシノニム(別名)でもあるため、どれを使ってもまったく同じ結果が得られます。
NOW()関数を使って日付部分だけを取得する
今日の日付を取得するもう一つの方法として、NOW()関数を利用するやり方もあります。NOW()は現在の日付と時刻の両方を返すため、DATE()関数で囲むことで日付部分だけを取り出します。
mysql> SELECT DATE(NOW());
実行結果は以下のとおりです。
+-------------+ | DATE(NOW()) | +-------------+ | 2019-04-09 | +-------------+ 1 row in set (0.00 sec)
まとめ
MySQLで今日の日付をYYYY-MM-DD形式で取得するなら、シンプルにCURDATE()を使うのがおすすめです。日付と時刻の両方が必要な場合はNOW()を、そこから日付部分だけを抽出したい場合はDATE(NOW())を使い分けるとよいでしょう。
-
MySQLで日付形式を変換する方法|STR_TO_DATE()関数の使い方を解説
MySQLでは、VARCHAR型などで保存された文字列の日付データを、正しい日付・時刻形式に変換したいケースがよくあります。そんなときに活躍するのが STR_TO_DATE() 関数です。この記事では、実際のSQL例とともに具体的な使い方を解説します。サンプルテーブルの作成まず、日付を文字列として格納するテーブルを作成します。mysql> create table DemoTable2010 ( DueDate varchar(20) ); Query OK, 0 rows affected (0.68 sec)テストデータの挿入INSERT文を使って、「日/月/年 時:分:秒」
-
MySQLでレコードを挿入しながら日付をフォーマットする方法(DATE_FORMAT活用)
MySQLでは、INSERT文の中でDATE_FORMAT()関数を使うことで、レコードを挿入する際に日付を任意の形式に整形できます。本記事では、実際にテーブルを作成し、日付をフォーマットしながらデータを挿入する手順を具体的なSQL例とともに解説します。1. テーブルの作成まず、フォーマット済みの日付文字列を格納するためのテーブルを作成します。ここでは、VARCHAR型のカラム「ShippingDate」を持つシンプルなテーブルを用意します。mysql> create table DemoTable2012 -> ( -> ShippingDate varch