Java 나 Javascript 에 존재하는 것과 목적성은 동일하다.
아직은 예상이지만,
예상하건대 외래값 참조 시 데이터 타입이 다르거나
아니면 값을 넘겨주고 받을 때 데이터 타입이 다른 경우를 위한 상황이 아닐까 싶다.
물론 전자의 경우는 확률이 0% 이지 않을까 싶다... Primary Key 를 바꾸지는 않을 것 같으니
둘 다 동일한 기능인데,
아래가 조금 더 직관적인 표현인 것 같아서 추가하게 되었다.
CAST (표현식 AS 바꿀 데이터 타입)
CAST ( 값 AS 바꿀 데이터 타입)
테이블에 안넣고도 확인할 수 있다.
아주 간단하면서도 꽤나 괜찮은 SELECT 활용문이라서 아래로 예시를 들어보겠다.
형변환이 불가능한 경우 타입 유효성 관련 오류가 발생한다.
SELECT CAST ('3000' AS INTEGER);
SELECT CAST ('3000won' AS INTEGER);
SELECT CAST('2021-12-09' AS TEXT), CAST('2021-12-09' AS DATE);
" :: " 키워드를 이용해서 사용할 수도 있다.
SELECT '3000' :: INTEGER;
SELECT '3000won' :: INTEGER;
SELECT '2021-12-09' :: TEXT, '2021-12-09' :: DATE;