MySQL 선택 쿼리에서 UTC 날짜를 현지 시간대로 변환
문제
A MySQL 쿼리에서는 UTC 타임스탬프를 저장하는 "displaytime" 열을 현지 시간으로 변환해야 합니다. 구역. 그런데 CONVERT_TZ() 함수를 사용하면 기대한 결과가 나오지 않습니다.
답변
1. 오류 메시지 확인
CONVERT_TZ()가 작동하지 않는 이유는 오류 메시지를 확인하세요.
2. 호환 가능한 열 유형 확인
CONVERT_TZ()에서는 입력 열이 타임스탬프 또는 날짜 데이터 유형이어야 합니다. "displaytime" 컬럼의 데이터 타입을 확인하세요.
3. 올바른 구문 사용
CONVERT_TZ()의 올바른 구문은 다음과 같습니다.
CONVERT_TZ(timestamp, source_timezone, destination_timezone)
4. 사용 예
예를 들어 표시 시간을 UTC에서 미국 동부 표준시(-05:00 GMT)로 변환하려면 다음을 사용합니다.
SELECT CONVERT_TZ(displaytime, 'UTC', 'America/New_York');
5. 시간대 테이블 확인
MySQL 시간대 테이블이 올바르게 초기화되었는지 확인하세요. 다음 명령을 실행하여 확인하세요.
SELECT * FROM mysql.time_zone; SELECT * FROM mysql.time_zone_name;
6. 시간대 데이터 로드
시간대 테이블이 비어 있으면 mysql_tzinfo_to_sql 프로그램을 사용하여 로드합니다.
mysql_tzinfo_to_sql /usr/share/zoneinfo
위 내용은 MySQL 선택 쿼리에서 UTC 날짜를 현지 시간대로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!