DATE 문자열을 MySQL의 DATE() 함수를 사용하여 DATETIME 필드의 문자열과 비교할 수 있습니다. 구문은 다음과 같습니다. -
select *from yourTableName where DATE(yourColumnName) = ’anyDateString’;
위의 구문을 이해하기 위해 테이블을 만들고 테이블에 날짜/시간 값을 설정해 보겠습니다. 테이블 생성 쿼리 -
mysql> create table DateTimeDemo −> ( −> ArrivalTime datetime −> ); Query OK, 0 rows affected (0.61 sec)
insert 명령을 사용하여 테이블에 일부 레코드를 삽입해 보겠습니다. 다음은 레코드를 삽입하는 쿼리입니다 -
mysql> insert into DateTimeDemo values(now()); Query OK, 1 row affected (0.11 sec) mysql> insert into DateTimeDemo values(date_add(now(),interval 2 year)); Query OK, 1 row affected (0.47 sec) mysql> insert into DateTimeDemo values(date_add(now(),interval 1 year)); Query OK, 1 row affected (0.19 sec) mysql> insert into DateTimeDemo values(date_add(now(),interval 4 year)); Query OK, 1 row affected (0.13 sec) mysql> insert into DateTimeDemo values(date_add(now(),interval -2 year)); Query OK, 1 row affected (0.17 sec) mysql> insert into DateTimeDemo values(date_add(now(),interval -1 year)); Query OK, 1 row affected (0.17 sec)
select 문을 사용하여 모든 레코드를 표시합니다. 테이블의 모든 레코드를 표시하는 쿼리 -
mysql> select *from DateTimeDemo;
다음은 출력입니다 -
+---------------------+ | ArrivalTime | +---------------------+ | 2018-12-06 10:12:45 | | 2020-12-06 10:13:10 | | 2019-12-06 10:13:21 | | 2022-12-06 10:13:27 | | 2016-12-06 10:13:42 | | 2017-12-06 10:13:50 | +---------------------+ 6 rows in set (0.00 sec)
이제 문자열과 날짜 시간 필드를 비교하기 위해 위에서 논의한 구문을 구현합니다. 쿼리는 다음과 같습니다 -
mysql> select *from DateTimeDemo where date(ArrivalTime) = '2022-12-06';
다음은 출력입니다 -
+---------------------+ | ArrivalTime | +---------------------+ | 2022-12-06 10:13:27 | +---------------------+ 1 row in set (0.14 sec)