MySQL Select Date Equal to Todayそして同じ日付の結果を返しますか?
今日の日付を取得するには、組み込み関数CURDATE()を使用します。 CURDATE()は、時刻ではなく現在の日付のみを提供します。それで、同じ日のレコードを取得するには、次の構文を試すことができます-
select yourColumnName1,yourColumnName2,......,yourColumnNameN,DATE_FORMAT(yourDateColumnName, '%Y-%m-%d') from yourTableName WHERE DATE(yourDateColumnName) = CURDATE();
上記の概念を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。これらの列の1つには、日付を表示する日時データ型があります-
mysql> create table GmailSignIn −> ( −> UserId int, −> UserName varchar(200), −> DateOfSignIn datetime −> ); Query OK, 0 rows affected (1.56 sec)
これで、挿入コマンドを使用して、いくつかのレコードをテーブルに挿入できます。現在の日付も2018-12-06に設定しました。
クエリは次のとおりです-
mysql> insert into GmailSignIn values(222111,'John',now()); Query OK, 1 row affected (0.15 sec) mysql> insert into GmailSignIn values(333222,'Johnson',curdate()); Query OK, 1 row affected (0.18 sec) mysql> insert into GmailSignIn values(444333,'Carol',date_add(curdate(),interval 1 day)); Query OK, 1 row affected (0.13 sec) mysql> insert into GmailSignIn values(555444,'David',date_add(curdate(),interval -1 day)); Query OK, 1 row affected (0.83 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from GmailSignIn;
以下は出力です-
+--------+----------+---------------------+ | UserId | UserName | DateOfSignIn | +--------+----------+---------------------+ | 222111 | John | 2018-12-06 19:13:30 | | 333222 | Johnson | 2018-12-06 00:00:00 | | 444333 | Carol | 2018-12-07 00:00:00 | | 555444 | David | 2018-12-05 00:00:00 | +--------+----------+---------------------+ 4 rows in set (0.00 sec)
これは、今日と等しい日付を選択し、同じ日付のレコードを表示するためのクエリです-
mysql> select UserId,UserName,DateOfSignIn,DATE_FORMAT(DateOfSignIn, '%Y-%m-%d') from GmailSignIn −> where date(DateOfSignIn) = curdate();
以下は出力です-
+--------+----------+---------------------+---------------------------------------+ | UserId | UserName | DateOfSignIn | DATE_FORMAT(DateOfSignIn, '%Y-%m-%d') | +--------+----------+---------------------+---------------------------------------+ | 222111 | John | 2018-12-06 19:13:30 | 2018-12-06 | | 333222 | Johnson | 2018-12-06 00:00:00 | 2018-12-06 | +--------+----------+---------------------+---------------------------------------+ 2 rows in set (0.00 sec)>
-
MySQLで対応する日付の曜日名を取得しますか?
日名を取得するには、MySQLのDAYNAME()関数を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1954 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1954 values('2019-12-15'); Query OK, 1 r
-
DATEタイムスタンプを変換して月番号を返す
月番号のみを返すには、DATE_FORMAT()-を使用できます。 mysql> create table DemoTable1999 ( ArrivalDate timestamp ); Query OK, 0 rows affected (0.66 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1999 values('2019-01-01 12:34:00'); Query OK, 1 row