CAST 및 CONVERT 함수는 데이터 형식을 변경하거나 다른 데이터 형식으로 변환하는 데 사용되는 함수입니다. 두 함수는 비슷한 목적을 가지고 있으며, 일부 경우에는 상호 대체 가능하지만 구문적으로 다릅니다.
CAST 함수
-데이터를 다른 데이터 유형으로 명시적으로 변환할 때 사용됩니다.
CAST(expression AS data_type)
-expression은 변환하려는 값 또는 열, data_type은 원하는 데이터 유형입니다.
CONVERT 함수
-데이터 형식을 변환하는 데 사용되며, MySQL에서는 CAST와 동일한 결과를 반환합니다.
CONVERT(expression, data_type)
-expression은 변환하려는 값 또는 열, data_type은 원하는 데이터 유형입니다.
CAST 함수와 CONVERT 함수의 다른 점
두 함수 사이의 주요 차이는 사용방법(구문)입니다. 그러나 MySQL 이외의 다른 데이터베이스 시스템에서는 구문 및 동작 면에서 차이가 있을 수 있습니다.
1. 데이터베이스 종속성
-CAST 함수는 SQL 표준의 일부로, 대부분의 주요 RDBMS 시스템에서 지원됩니다.
-CONVERT 함수는 MySQL 특정한 함수로, MySQL에서 사용할 수 있으며 일부 다른 RDBMS 시스템에서는 지원되지 않을 수 있습니다.
예제
1. 정수를 문자열로 변환
SELECT CAST(123 AS CHAR) AS CastExample, CONVERT(123, CHAR) AS ConvertExample;
2. 실수를 정수로 변환 (소수점 잘림)
SELECT CAST(45.78 AS SIGNED) AS CastExample, CONVERT(45.78, SIGNED) AS ConvertExample;
3. 문자열을 정수로 변환
SELECT CAST('789' AS SIGNED) AS CastExample, CONVERT('789', SIGNED) AS ConvertExample;
4. 날짜를 문자열로 변환
SELECT CAST(NOW() AS CHAR) AS CastExample, CONVERT(NOW(), CHAR) AS ConvertExample;
5. 문자열을 날짜로 변환
SELECT CAST('2023-10-26' AS DATE) AS CastExample, CONVERT('2023-10-26', DATE) AS ConvertExample;
6. 날짜 형식 변경
SELECT CAST('2023-10-26' AS DATETIME) AS CastExample, CONVERT('2023-10-26', DATETIME) AS ConvertExample;
7. 이진 데이터를 문자열로 변환
SELECT CAST(0x48656C6C6F AS CHAR) AS CastExample, CONVERT(0x48656C6C6F, CHAR) AS ConvertExample;
'개발이야기 > MySQL' 카테고리의 다른 글
[MySQL] COALESCE 사용법, 예제, 활용하기 (NULL 치환) (0) | 2024.08.01 |
---|---|
[MySQL] IF() 조건문 여러개 사용법, 예제 (1) | 2023.10.23 |
[MySQL] 뷰(VIEW) 테이블 생성하기, 예제, 사용법과 목적 (0) | 2023.09.22 |
[MySQL] 문자열 대문자, 소문자 변환하기 (UPPER, LOWER 사용법/예제) (0) | 2023.09.12 |
[MySQL] 문자열 합치기/붙이기/연결하기 (CONCAT, CONCAT_WS 사용법&예제) (0) | 2023.09.11 |
댓글