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)