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

초 없이 MySQL에서 시간 데이터 유형을 사용하시겠습니까?

<시간/>

이를 위해 DATE_FORMAT()을 사용해야 합니다. 구문은 다음과 같습니다 -

SELECT DATE_FORMAT(yourColumnName,'%k:%i') as anyAliasName FROM yourTableName;

동일한 결과에 대해 '%H:%i'를 사용할 수 있습니다. 위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다.

테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> Create table TimeDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> LastLoginTime 시간 -> );쿼리 OK, 영향을 받는 행 0개(0.56초)

이제 insert 명령을 사용하여 테이블에 일부 레코드를 삽입할 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> insert into TimeDemo(LastLoginTime) values('09:30:35');Query OK, 1행 영향(0.20초)mysql> insert into TimeDemo(LastLoginTime) values('10:45:30');쿼리 OK, 1행 영향(0.19초)mysql> TimeDemo(LastLoginTime) 값에 삽입('13:33:58');쿼리 OK, 1행 영향(0.24초)mysql> TimeDemo(LastLoginTime) 값에 삽입( '15:45:31');쿼리 OK, 1행 영향(0.21초)mysql> TimeDemo(LastLoginTime) 값에 삽입('16:40:36');쿼리 OK, 1행 영향(0.17초) 

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

mysql> 선택 *TimeDemo에서;

다음은 출력입니다 -

+----+---------------+| 아이디 | 마지막 로그인 시간 |+----+---------------+| 1 | 09:30:35 || 2 | 10:45:30 || 3 | 13:33:58 || 4 | 15:45:31 || 5 | 16:40:36 |+----+---------------+5행 세트(0.00초)

다음은 초 없이 시간을 구하는 쿼리입니다. 쿼리는 다음과 같습니다 -

mysql> TimeDemo에서 `Time`으로 DATE_FORMAT(LastLoginTime,'%k:%i') 선택;

다음은 출력입니다 -

+-------+| 시간 |+----+| 9:30 || 10:45 || 13:33 || 15:45 || 16:40 |+-------+5행 세트(0.00초)

%H:%i와 같은 형식 지정자를 변경하여 초 없이 동일한 결과를 얻을 수 있습니다. 쿼리는 다음과 같습니다 -

mysql> TimeDemo에서 `Time`으로 DATE_FORMAT(LastLoginTime,' %H:%i')을 선택합니다.

다음은 출력입니다 -

+--------+| 시간 |+--------+| 09:30 || 10:45 || 13:33 || 15:45 || 16:40 |+--------+5행 세트(0.00초)