Time은 시, 분, 초 요소로 이루어진 시간을 나타냅니다.
이 타입은 특정 달력 날짜와는 무관하며, 일, 월, 연 요소가 필요하지 않은 값에 적합합니다.
구문:
구현 세부 사항
Time은 내부적으로 초를 인코딩하는 부호 있는 32비트 정수로 저장됩니다.
Time과 DateTime 타입 값은 바이트 크기가 같으므로 성능도 비슷합니다.
정규화.
문자열을 Time으로 파싱할 때 시간 구성 요소는 정규화되며, 유효성 검사는 수행하지 않습니다.
예를 들어 25:70:70은 26:11:10으로 해석됩니다.
음수 값.
선행 마이너스 기호가 지원되며 그대로 유지됩니다.
음수 값은 일반적으로 Time 값에 대한 산술 연산으로 발생합니다.
Time 타입에서는 텍스트 입력(예: '-01:02:03')과 숫자 입력(예: -3723) 모두에서 음수 입력이 그대로 유지됩니다.
포화.
하루 중 시간(time-of-day) 구성 요소는 [-999:59:59, 999:59:59] 범위로 제한됩니다.
시간이 999를 초과하는 값(또는 -999보다 작은 값)은 텍스트로 999:59:59(또는 -999:59:59)로 표현되며, 다시 텍스트로 변환해도 동일하게 유지됩니다.
시간대.
Time은 시간대를 지원하지 않으며, 즉 Time 값은 지역별 맥락 없이 해석됩니다.
타입 매개변수로 Time에 시간대를 지정하거나 값을 생성할 때 시간대를 지정하면 오류가 발생합니다.
마찬가지로 Time 컬럼에 시간대를 적용하거나 변경하려는 시도도 지원되지 않으며 오류가 발생합니다.
Time 값은 서로 다른 시간대에 따라 암묵적으로 재해석되지 않습니다.
예시
Time 타입 컬럼이 있는 테이블을 생성하고 데이터를 삽입하는 예시:
Time 값으로 필터링
Time 컬럼 값은 WHERE 프레디케이트에서 문자열 값으로 필터링할 수 있습니다. 문자열 값은 자동으로 Time으로 변환됩니다: