반응형
datetime php/module에 30분 추가
mysql에 datetime 필드(end Time)가 있습니다.gmdate()를 사용하여 이 endTime 필드에 입력합니다.
저장된 값은 2009-09-17 04:10:48과 같습니다.저는 이 종료 시간에 30분을 더해서 현재 시간과 비교하고 싶습니다.즉, 사용자는 endTime 내에 특정 태스크를 30분 동안만 수행할 수 있습니다.endTime 30분이 경과한 후 작업을 수행할 수 없도록 해야 합니다.
어떻게 그걸 php로 할 수 있죠?
gmdate를 사용하여 존의 차이가 없는지 확인합니다.
잘 부탁드립니다
MySQL을 사용하는 경우 다음과 같이 할 수 있습니다.
SELECT '2008-12-31 23:59:59' + INTERVAL 30 MINUTE;
순수 PHP 솔루션의 경우 스트롯타임을 사용합니다.
strtotime('+ 30 minute',$yourdate);
이거 드셔보세요.
DATE_ADD(datefield, INTERVAL 30 MINUTE)
MySQL에는 두 번 더 추가하는 기능이 있어 MySQL에서 모든 작업을 수행할 수 있습니다(>= MySQL 4.1.3을 사용하는 경우).
예를 들어 (테스트되지 않은)
SELECT * FROM my_table WHERE ADDTIME(endTime + '0:30:00') < CONVERT_TZ(NOW(), @@global.time_zone, 'GMT')
도밍크는 옳은 생각을 가지고 있지만 계산은 다른 쪽에 두고 있다.
SELECT * FROM my_table WHERE endTime < DATE_SUB(CONVERT_TZ(NOW(), @@global.time_zone, 'GMT'), INTERVAL 30 MINUTE)
이렇게 하면 각 행에 대해 계산하지 않고 30분 동안 계산을 한 번 수행할 수 있다는 장점이 있습니다.즉, MySQL은 해당 컬럼의 인덱스를 사용할 수 있습니다.둘 다 속도를 높일 수 있습니다.
DATE_ADD 함수 사용
DATE_ADD(datecolumn, INTERVAL 30 MINUTE);
30분을 추가하여 MySQL 테이블에서 날짜 가져오기
SELECT loginDate, date_add(loginDate,interval 30 minute) as newLoginDate
FROM `tableName`;
그 결과는 다음과 같습니다.
Login Date - 2020-07-22 14:00:00
New Login Date - 2020-07-22 14:30:00
언급URL : https://stackoverflow.com/questions/1436827/adding-30-minutes-to-datetime-php-mysql
반응형
'programing' 카테고리의 다른 글
Java에서 HashMap을 정렬하는 방법 (0) | 2023.01.22 |
---|---|
저장소의 개체에 있는 동적 속성을 v-모델로 사용하는 방법은 무엇입니까? (0) | 2023.01.22 |
Python에서 경과시간을 측정하려면 어떻게 해야 하나요? (0) | 2023.01.22 |
iframe 액션에서 상위 창 리디렉션 (0) | 2023.01.22 |
Javascript를 사용하여 현재 도메인 이름 가져오기(경로 등이 아님) (0) | 2023.01.22 |