시작하기무료로 시작하기

함수를 사용해 타입 변환하기 USING

특정 varchar 열에 너무 많은 공간을 할당하고 싶지 않다면, 타입을 변환하기 전에 값을 잘라서(truncate) 줄일 수 있어요.

이를 위해 다음 구문을 사용할 수 있어요:

ALTER TABLE table_name
ALTER COLUMN column_name
TYPE varchar(x)
USING SUBSTRING(column_name FROM 1 FOR x)

이렇게 이해하시면 돼요: column_namex자만 저장하도록 하려면, 각 값에서 SUBSTRING을 사용해 앞의 x자만 남기고 나머지는 버려야 해요. 이렇게 하면 값이 varchar(x) 제한에 맞게 됩니다.

이 연습은 강의의 일부입니다

SQL로 배우는 관계형 데이터베이스 입문

강의 보기

연습 안내

  • 샘플 코드를 그대로 실행하고 발생하는 오류를 확인하세요.
  • 이제 SUBSTRING()을 사용해 firstname을 16자로 줄여서, 해당 열의 타입을 varchar(16)으로 변경할 수 있도록 하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

-- Convert the values in firstname to a max. of 16 characters
ALTER TABLE professors 
ALTER COLUMN firstname 
TYPE varchar(16)
코드 편집 및 실행