실용 sql 5장
2023. 11. 26. 23:42ㆍ실용 SQL
320x100
COPY를 사용하여 데이터 가져오기
COPY table_name --COPY : 대상 테이블의 이름
FROM 'CSV 파일의 경로' --FROM : 이름을 포함하여 소스 파일의 전체 경로를 식별
WITH (FORMAT CSV, HEADER); --WITH : 원하는 옵션을 괄호로 감싸 입출력 파일에 맞게 조정할 수 있는 옵션을 지정할 수 있게 해줌
입출력 파일 형식
- FORMAT format_name : 읽거나 쓰는 파일의 유형을 지정
- 형식 이름
- CSV
- TEXT(탭 문자는 구분 기호 기본값, 백슬래시 문자는 해당 ASCII 문자로 인식)
- BINARY(일련의 바이트로 저장)
헤더 행 포함 여부
- HEADER : 소스 파일에 제외할 헤더 행이 있음을 지정
- 헤더의 열 이름이 테이블의 데이터 일부가 되지 않도록 파일의 두 번째 줄부터 가져옴
구분 기호
- DELIMITER 'character' : 가져오기 또는 내보내기 파일에서 구분자로 사용할 문자를 지정
- 단일 문자
- 캐리지 리턴이 될 수 없음
데이터 삭제하기
DELETE FROM 테이블명
--테이블에서 데이터 삭제
--ID열의 IDENTITY 열 값은 재설정되지 않음
WHERE로 행 하위 집합 가져오기
COPY supervisior_salaries (town, supervisior, salary) --테이블 열을 데이터베이스에 명시
FROM 'CSV 파일 경로'
WITH (FORMAT CSV, HEADER)
WHERE town = 'New Brilling'; --가져온 데이터 필터링
SELECT * FROM supervisior_salaries; --테이블의 내용 살펴보기
데이터를 가져오는 과정에서 편집(== 임시 테이블)
CREATE TEMPORARY TABLE supervisor_salaries_temp
(LIKE supervisor_salaries INCLUDING ALL); --임시 테이블 생성
COPY supervisor_salaries_temp (town, supervisor, salary) --파일을 임시 테이블로 가져오기
FROM 'C:\CSV 파일 경로\파일이름.csv'
WITH (FORMAT CSV, HEADER);
INSERT INTO supervisor_salaries (town, county, supervisor, salary) --테이블 채우기
SELECT town, 'Mills', supervisor, salaries --임시 테이블 쿼리
FROM supervisor_salaries_temp;
DROP TABLE supervisor_salaries_temp; --임시 테이블 삭제
--결과 : county 열에 Mills 값 생성
데이터 내보내기
--C모든 데이터 추출
COPY 테이블
TO 'C:\추출하는 디렉터리 위치\파일이름.txt'
WITH (FORMAT CSV, HEADER, DELIMITER '|'); --파이프 기호를 구분 기호로 사용
--선택된 열 추출
COPY 테이블
(county_name, internal_point_lat, internal_point_lon) --추출할 열 입력
TO 'C:\추출하는 디렉터리 위치\파일이름.txt'
WITH (FORMAT CSV, HEADER, DELIMITER '|');
--쿼리 결과 내보내기
COPY (
SELECT county_name, state_name --해달 열의
FROM us_counties_pop_est_2019 --이 파일로부터
WHERE county_name ILIKE '%mill%' --county_name에 mill이 대소문자 구분하지 않고 포함 된 경우에 출력
)
TO 'C:\추출하는 디렉터리 위치\파일이름.csv'
WITH (FORMAT CSV, HEADER);
320x100
320x100
'실용 SQL' 카테고리의 다른 글
실용 sql 7주차 과제 (0) | 2023.10.16 |
---|---|
실용 sql 4장 (2) | 2023.10.16 |
실용 sql 3장 (2) | 2023.10.09 |
실용 sql 2장, 3장 과제 (0) | 2023.10.09 |
실용 sql 2장 (0) | 2023.10.09 |