Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL은 오늘과 같은 날짜를 선택하고 같은 날짜에 대한 결과를 반환하시겠습니까?

<시간/>

오늘 날짜를 얻으려면 내장 함수 CURDATE()를 사용하십시오. CURDATE()는 시간이 아닌 현재 날짜만 제공합니다. 이를 통해 같은 날의 기록을 얻으려면 다음 구문을 시도할 수 있습니다. -

select yourColumnName1,yourColumnName2,......,yourColumnNameN,DATE_FORMAT(yourDateColumnName, '%Y-%m-%d') from yourTableName
WHERE DATE(yourDateColumnName) = CURDATE();

위의 개념을 이해하기 위해 테이블을 만들어 보겠습니다. 테이블 생성 쿼리는 다음과 같다. 이 열 중 하나는 날짜를 표시하는 datetime 데이터 유형을 갖습니다 -

mysql> create table GmailSignIn
   −> (
   −> UserId int,
   −> UserName varchar(200),
   −> DateOfSignIn datetime
   −> );
Query OK, 0 rows affected (1.56 sec)

이제 insert 명령을 사용하여 일부 레코드를 테이블에 삽입할 수 있습니다. 현재 날짜도 2018-12-06으로 설정했습니다.

쿼리는 다음과 같습니다 -

mysql> insert into GmailSignIn values(222111,'John',now());
Query OK, 1 row affected (0.15 sec)

mysql> insert into GmailSignIn values(333222,'Johnson',curdate());
Query OK, 1 row affected (0.18 sec)

mysql> insert into GmailSignIn values(444333,'Carol',date_add(curdate(),interval 1 day));
Query OK, 1 row affected (0.13 sec)

mysql> insert into GmailSignIn values(555444,'David',date_add(curdate(),interval -1 day));
Query OK, 1 row affected (0.83 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다 -

mysql> select *from GmailSignIn;

다음은 출력입니다 -

+--------+----------+---------------------+
| UserId | UserName | DateOfSignIn        |
+--------+----------+---------------------+
| 222111 | John     | 2018-12-06 19:13:30 |
| 333222 | Johnson  | 2018-12-06 00:00:00 |
| 444333 | Carol    | 2018-12-07 00:00:00 |
| 555444 | David    | 2018-12-05 00:00:00 |
+--------+----------+---------------------+
4 rows in set (0.00 sec)

다음은 오늘과 같은 날짜를 선택하고 같은 날짜의 레코드를 표시하는 쿼리입니다 -

mysql> select UserId,UserName,DateOfSignIn,DATE_FORMAT(DateOfSignIn, '%Y-%m-%d') from GmailSignIn
   −> where date(DateOfSignIn) = curdate();

다음은 출력입니다 -

+--------+----------+---------------------+---------------------------------------+
| UserId | UserName | DateOfSignIn        | DATE_FORMAT(DateOfSignIn, '%Y-%m-%d') |
+--------+----------+---------------------+---------------------------------------+
| 222111 | John     | 2018-12-06 19:13:30 | 2018-12-06                            |
| 333222 | Johnson  | 2018-12-06 00:00:00 | 2018-12-06                            |
+--------+----------+---------------------+---------------------------------------+
2 rows in set (0.00 sec)