>  기사  >  데이터 베이스  >  MySQL 쿼리 일

MySQL 쿼리 일

王林
王林원래의
2023-05-23 14:18:082639검색

MySQL 쿼리 일수

데이터베이스 개발에서는 두 날짜 사이의 일수, 시간, 분 등의 수를 계산하는 등 시간과 날짜 차이를 쿼리해야 하는 경우가 많습니다. MySQL은 이 기능을 구현하기 위해 몇 가지 기능을 제공하는데, 이를 통해 시간과 날짜의 차이를 쉽게 계산할 수 있습니다.

1. DATEDIFF 함수

DATEDIFF 함수는 두 날짜 사이의 일수 차이를 반환합니다. 구문은 다음과 같습니다.

DATEDIFF(date1,date2)

여기서 date1과 date2는 두 개의 날짜 또는 날짜/시간 값이고, 함수는 두 날짜 사이의 일수 차이를 반환합니다. date1이 date2보다 이후이면 반환 값은 양수이고, 그렇지 않으면 반환 값은 음수입니다.

예:

SELECT DATEDIFF('2019-01-03','2018-12-31'); // 输出3

두 테이블의 사용자 등록 날짜 차이를 쿼리합니다.

SELECT DATEDIFF(reg_time,now()) AS days FROM user;

2. TIMESTAMPDIFF 함수

TIMESTAMPDIFF 함수는 두 날짜 사이의 시차를 반환합니다. 구문은 다음과 같습니다.

TIMESTAMPDIFF(unit,start,stop)

여기서 단위는 시차를 계산하는 단위를 나타내며 초(SECOND), 분(MINUTE), 시(HOUR), 일(DAY), 주(WEEK), 월( MONTH) 또는 연도( YEAR).

start 및 stop은 시작 날짜와 종료 날짜를 나타내며 날짜 또는 날짜/시간 값일 수 있습니다. 이 함수는 두 날짜 사이의 시간 차이를 단위로 반환합니다. 시작이 중지보다 늦으면 반환 값은 양수이고, 그렇지 않으면 반환 값은 음수입니다.

예:

SELECT TIMESTAMPDIFF(MONTH,'2018-02-28','2018-03-31'); // 输出1

사용자의 등록 기간 쿼리:

SELECT TIMESTAMPDIFF(DAY,reg_time,now()) AS days FROM user;

3. TIMEDIFF 함수

TIMEDIFF 함수는 두 시간 사이의 시간 차이를 hh:mm:ss 형식으로 반환합니다. 구문은 다음과 같습니다.

TIMEDIFF(time1, time2)

여기서 time1과 time2는 시간 또는 시간 날짜 값이고, 함수는 time1과 time2 사이의 시간 차이를 반환합니다.

예:

SELECT TIMEDIFF('18:30:00', '17:00:00'); // 输出01:30:00

주문 배송 시간 쿼리:

SELECT TIMEDIFF(end_time,start_time) AS duration FROM order WHERE order_id=123;

IV. TIME_TO_SEC 함수 및 SEC_TO_TIME 함수

TIME_TO_SEC 함수는 시간 값을 초로 변환하며 구문은 다음과 같습니다.

TIME_TO_SEC(time)

여기서 시간은 시간 또는 시간 날짜 값, 함수는 총 시간(초)을 반환합니다.

SEC_TO_TIME 함수는 초를 시간 값으로 변환합니다. 구문은 다음과 같습니다.

SEC_TO_TIME(seconds)

여기서 초는 초 수를 나타내고 함수는 해당 시간 값을 반환합니다.

예:

SELECT TIME_TO_SEC('01:30:00'); // 输出5400
SELECT SEC_TO_TIME(5400); // 输出01:30:00

5. 요약

MySQL은 시간과 날짜 차이를 계산하는 여러 기능을 제공하며 필요에 따라 유연하게 선택하고 사용할 수 있습니다. 실제 개발에서는 더 나은 기능 구현을 위해 특정 비즈니스 요구 사항에 따라 적절한 계산 방법을 선택해야 합니다.

위 내용은 MySQL 쿼리 일의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.