집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server DateTime을 HH:MM:SS 시간 형식으로 변환하는 방법은 무엇입니까?
SQL Server에서 시간 데이터 유형은 시간 값을 저장하지만 특정 표시 형식을 포함하지 않습니다. HH:MM:SS 형식의 시간 값을 추출하려면 DateTime 필드를 문자열로 변환해야 합니다.
CONVERT 함수를 사용하면 다음과 같이 DateTime 필드를 원하는 형식의 문자열로 변환할 수 있습니다.
<code class="language-sql">SELECT CONVERT(varchar(8), CAST([datetime] AS TIME), 108) AS [CSTTime]</code>
지침:
CONVERT
함수는 [datetime]
필드를 문자열로 변환합니다. varchar(8)
매개변수는 결과 문자열의 길이(이 경우 8자)를 지정합니다. varchar
은 사용된 실제 문자 수만 저장하므로 char
을 사용하는 것이 varchar
보다 더 효율적입니다. CAST([datetime] AS TIME)
datetime
값을 TIME
데이터 유형으로 변환하고 날짜 부분을 제거합니다. 108
스타일 코드는 SQL Server에 시간 값을 밀리초를 무시하고 HH:MM:SS 형식으로 변환하도록 지시합니다. 예:
DateTime 값이 '2015-03-19 00:00:00.000'인 경우 위 쿼리는 '00:00:00'을 반환합니다. datetime
에 시간 정보가 포함되어 있으면 해당 시간 정보가 반환됩니다.
기술적 배경:
내부적으로 SQL Server는 자정 이후의 시계 틱 수를 나타내는 4바이트 정수로 시간 값을 저장합니다. 각 틱은 3.3밀리초를 나타냅니다. 따라서 시간 데이터 유형 자체에는 특정 표시 형식이 없습니다.
CAST 구문을 사용하여 DateTime을 Time으로 변환하면 결과 Time 값에 밀리초가 보존됩니다. HH:MM:SS 형식의 형식화된 문자열을 얻으려면 CONVERT 함수를 사용해야 합니다. CAST
를 사용하여 먼저 값을 TIME
유형으로 변환한 다음 CONVERT
을 사용하여 출력 형식을 지정하면 더 명확하고 정확한 변환 결과가 보장됩니다.
위 내용은 SQL Server DateTime을 HH:MM:SS 시간 형식으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!