MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで現在の日付と月を比較する日付レコードを取得します


これには、MONTH()とDAY()を使用します。まず、-

を作成しましょう
mysql> create table DemoTable1429
   -> (
   -> AnniversaryDate date
   -> );

insert-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1429 values('2019-09-29');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1429 values('2018-09-27');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1429 values('2016-09-28');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable1429 values('2015-09-29');
Query OK, 1 row affected (0.12 sec)

select-

を使用してテーブルのすべてのレコードを表示します
mysql> select * from DemoTable1429;

これにより、次の出力が生成されます-

+-----------------+
| AnniversaryDate |
+-----------------+
| 2019-09-29      |
| 2018-09-27      |
| 2016-09-28      |
| 2015-09-29      |
+-----------------+
4 rows in set (0.00 sec)

現在の日付は次のとおりです-

mysql> select curdate();
+------------+
| curdate()  |
+------------+
| 2019-09-29 |
+------------+
1 row in set (0.00 sec)

これは、現在の日付の日と月と比較して日付レコードをフェッチするためのクエリです-

mysql> select * from DemoTable1429
   -> where month(AnniversaryDate)=month(curdate())
   -> and day(AnniversaryDate)=day(curdate());

これにより、次の出力が生成されます-

+-----------------+
| AnniversaryDate |
+-----------------+
| 2019-09-29      |
| 2015-09-29      |
+-----------------+
2 rows in set (0.00 sec)

  1. 現在の日付にMySQLに登録している人の数を取得します

    このために、COUNT()をGROUP BY MONTH()と一緒に使用できます。現在の日付と一致させるには、CURRENT_DATE()を使用します。現在の日付は次のとおりです- mysql> select curdate() ; +------------+ | curdate()  | +------------+ | 2019-11-30 | +------------+ 1 row in set (0.00 sec) まずテーブルを作成しましょう- mysql> create table DemoTable1819      (

  2. MySQLで条件が満たされた場合に列を選択して、現在の日付と現在の日付+1からレコードをフェッチします

    まず、現在の日付を取得しましょう- mysql> select curdate(); これにより、次の出力が生成されます- +------------+ | curdate()  | +------------+ | 2019-12-15 | +------------+ 1 row in set (0.00 sec) まずテーブルを作成しましょう- mysql> create table DemoTable1956    (    ProductId int,    ProductName varchar(