시작하기무료로 시작하기

데이터 중복 줄이기

Small Business Administration의 이전 직원이 데이터베이스의 초기 버전을 만들었어요. 대출자, 은행, 프로젝트 전반에서 위치 정보가 사용되고 있습니다. 각각의 테이블이 city, state, zip_code 열을 가지고 있어 데이터가 중복되고 있어요. 이제 이 위치 데이터를 정규화하는 것이 여러분의 책임이에요. 위치 데이터를 통합하기 위해 place 테이블을 생성하면서 데이터 정규화 지식을 직접 적용해 보세요.

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

PostgreSQL 데이터베이스 만들기

강의 보기

연습 안내

  • zip_code를 다섯 글자 문자PRIMARY KEY로, city를 최대 50자까지의 텍스트형으로, state를 두 글자 열로 하여 place 테이블을 생성하세요.
  • borrower 테이블 정의에서 city, state, zip_code 열을 정의하는 SQL 코드를 삭제하여 해당 열들을 제거하세요.
  • borrower 테이블에 외래 키인 place_id 열을 추가하고, 이 열이 place 테이블의 zip_code 열을 참조하도록 하세요.

실습형 인터랙티브 연습

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

-- Create the place table
___ ___ ___ (
  -- Define zip_code column
  ___ ___(___) ___ KEY,
  -- Define city column
  ___ ___(___) NOT NULL,
  -- Define state column
  ___ ___(___) NOT NULL
);

CREATE TABLE borrower (
  id SERIAL PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  approved BOOLEAN DEFAULT NULL,
  
  -- Remove zip_code column (defined below)
  zip_code CHAR(5) NOT NULL,
  
  -- Remove city column (defined below)
  city VARCHAR(50) NOT NULL,
  
  -- Remove state column (defined below)
  state CHAR(2) NOT NULL,
  
  -- Add column referencing place table
  ___ ___(___) ___ ___(___)
);
코드 편집 및 실행