데이터베이스에서 데이터를 쿼리할 때 종종 데이터의 형식을 변환해야 하는 경우가 있습니다. 이때 사용되는 함수로는 CAST
와 CONVERT
가 있습니다. 이 블로그에서는 이 두 함수의 사용법과 차이점에 대해 알아보겠습니다.
1. CAST 함수
CAST
함수는 데이터를 다른 데이터 유형으로 변환하는 데 사용됩니다. 다음은 CAST
함수의 기본 구문입니다.
SELECT CAST(column_name AS new_data_type) AS new_column_name
FROM table_name;
예를 들어, 문자열을 숫자로 변환하려면 다음과 같이 사용할 수 있습니다.
SELECT CAST('10' AS INT) AS converted_value;
이 경우 ‘10’이라는 문자열이 정수로 변환되어 converted_value
열에 저장됩니다.
2. CONVERT 함수
CONVERT
함수도 데이터 형식을 변환하는 데 사용됩니다. 그러나 CONVERT
함수는 CAST
함수와 다르게 미국식 날짜 형식(MM/DD/YYYY) 등과 같은 형식을 지정할 수 있는 장점이 있습니다. 다음은 CONVERT
함수의 기본 구문입니다.
SELECT CONVERT(new_data_type, column_name) AS new_column_name
FROM table_name;
예를 들어, 날짜를 다른 형식으로 변환하려면 다음과 같이 사용할 수 있습니다.
SELECT CONVERT(VARCHAR, GETDATE(), 101) AS converted_date;
위의 예제에서는 GETDATE()
함수를 통해 현재 날짜를 미국식 날짜 형식(MM/DD/YYYY)으로 변환하여 converted_date
열에 저장합니다.
3. 차이점
CAST
와 CONVERT
함수는 기본적으로 유사한 기능을 제공하지만, CONVERT
함수가 형식을 지정할 수 있는 점이 다릅니다. 따라서 데이터 유형을 변환할 때 특정한 형식으로 변환해야 하는 경우에는 CONVERT
함수를 사용하는 것이 좋습니다.
지금까지 CAST
와 CONVERT
함수의 기본적인 사용법과 차이점에 대해 알아보았습니다. 데이터 형변환은 데이터베이스 쿼리에서 자주 사용되므로 이러한 함수의 활용은 중요합니다.
참고문헌:
- SQL Server CAST and CONVERT Functions
- Understanding the Difference between CAST and CONVERT in SQL Server