이를 위해서는 학생의 현재 날짜와 결과 날짜의 차이를 비교하여 찾아야 합니다. 이것은 DATEDIFF()와 함께 AND 연산자를 사용하여 수행할 수 있습니다.
먼저 테이블을 생성하겠습니다 -
mysql> create table DemoTable1547 -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20), -> StudentMarks int, -> StudentResultDeclareDate datetime -> ); Query OK, 0 rows affected (0.55 sec)
삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -
mysql> insert into DemoTable1547(StudentName,StudentMarks,StudentResultDeclareDate) values('Chris',56,'2019-10-13 13:00:00') -> ; Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable1547(StudentName,StudentMarks,StudentResultDeclareDate) values('Bob',60,'2019-10-13 12:00:00'); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable1547(StudentName,StudentMarks,StudentResultDeclareDate) values('Mike',45,'2019-10-13 14:00:00'); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable1547(StudentName,StudentMarks,StudentResultDeclareDate) values('Carol',78,'2019-10-01 14:00:00'); Query OK, 1 row affected (0.11 sec)
select 문을 사용하여 테이블의 모든 레코드 표시 -
mysql> select * from DemoTable1547;
이것은 다음과 같은 출력을 생성합니다 -
+-----------+-------------+--------------+--------------------------+ | StudentId | StudentName | StudentMarks | StudentResultDeclareDate | +-----------+-------------+--------------+--------------------------+ | 1 | Chris | 56 | 2019-10-13 13:00:00 | | 2 | Bob | 60 | 2019-10-13 12:00:00 | | 3 | Mike | 45 | 2019-10-13 14:00:00 | | 4 | Carol | 78 | 2019-10-01 14:00:00 | +-----------+-------------+--------------+--------------------------+ 4 rows in set (0.00 sec)
현재 날짜는 다음과 같습니다 -
mysql> select curdate(); +------------+ | curdate() | +------------+ | 2019-10-13 | +------------+ 1 row in set (0.00 sec)
다음은 현재 날짜보다 12일 전에 결과가 선언된 학생 기록을 가져오는 쿼리입니다. -
mysql> select * from DemoTable1547 where datediff(curdate(),StudentResultDeclareDate) >=12 and StudentMarks > 50;
이것은 다음과 같은 출력을 생성합니다 -
+-----------+-------------+--------------+--------------------------+ | StudentId | StudentName | StudentMarks | StudentResultDeclareDate | +-----------+-------------+--------------+--------------------------+ | 4 | Carol | 7 8 | 2019-10-01 14:00:00 | +-----------+-------------+--------------+--------------------------+ 1 row in set (0.00 sec)