Syntax error Fetch date records comparing with the current date’s day and month in MySQL

Fetch date records comparing with the current date’s day and month in MySQL



For this, use MONTH() and DAY(). Let us first create a −

mysql> create table DemoTable1429
   -> (
   -> AnniversaryDate date
   -> );

Insert some records in the table using 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)

Display all records from the table using select −

mysql> select * from DemoTable1429;

This will produce the following output −

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

The current date is as follows −

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

Here is the query to fetch date records comparing with current date’s day and month −

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

This will produce the following output −

+-----------------+
| AnniversaryDate |
+-----------------+
| 2019-09-29      |
| 2015-09-29      |
+-----------------+
2 rows in set (0.00 sec)
Updated on: 2019-11-12T06:25:00+05:30

177 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements