Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 특정 열(컬럼) 데이터를 파일로 내보내는 방법

MySQL에서 특정 열 데이터를 내보내는 방법

MySQL에서 특정 열(컬럼)의 데이터만 골라서 파일로 저장하고 싶다면 INTO OUTFILE 구문을 사용하면 됩니다. 기본 문법은 다음과 같습니다.

SELECT yourColumnName FROM yourTableName INTO OUTFILE 'yourLocationOfFile';

이제 실제 예제를 통해 단계별로 자세히 살펴보겠습니다.

1단계: 테이블 생성하기

먼저 예제로 사용할 테이블을 생성합니다.

mysql> CREATE TABLE DemoTable
(
    StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentFirstName VARCHAR(20),
    StudentLastName VARCHAR(20)
);
Query OK, 0 rows affected (0.54 sec)

2단계: 데이터 삽입하기

INSERT 명령어를 사용해 테이블에 레코드를 추가합니다.

mysql> INSERT INTO DemoTable(StudentFirstName, StudentLastName) VALUES('John','Doe');
Query OK, 1 row affected (0.26 sec)
mysql> INSERT INTO DemoTable(StudentFirstName, StudentLastName) VALUES('David','Miller');
Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO DemoTable(StudentFirstName, StudentLastName) VALUES('John','Smith');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable(StudentFirstName, StudentLastName) VALUES('Carol','Taylor');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable(StudentFirstName, StudentLastName) VALUES('Sam','Williams');
Query OK, 1 row affected (0.18 sec)

3단계: 저장된 데이터 확인하기

SELECT 명령어로 테이블의 전체 레코드를 조회합니다.

mysql> SELECT * FROM DemoTable;

실행 결과는 다음과 같습니다.

+-----------+------------------+-----------------+
| StudentId | StudentFirstName | StudentLastName |
+-----------+------------------+-----------------+
| 1         | John             | Doe             |
| 2         | David            | Miller          |
| 3         | John             | Smith           |
| 4         | Carol            | Taylor          |
| 5         | Sam              | Williams        |
+-----------+------------------+-----------------+
5 rows in set (0.00 sec)

4단계: 특정 열 데이터 내보내기

다음은 MySQL에서 특정 열의 데이터를 파일로 내보내는 쿼리입니다.

mysql> SELECT StudentLastName FROM DemoTable INTO OUTFILE 'E:\StudentLastName.txt';
Query OK, 5 rows affected (0.00 sec)

위 쿼리를 실행하면 StudentLastName 열의 값들이 지정한 경로인 'E:\StudentLastName.txt' 파일에 저장됩니다. 파일을 열어보면 다섯 명의 학생 성(last name)이 정상적으로 기록되어 있으며, 이를 통해 열 데이터가 성공적으로 내보내졌음을 확인할 수 있습니다.

OUTFILE 사용 시 알아두면 좋은 팁

  • 파일 쓰기 권한 확인: MySQL 서버가 지정한 경로에 파일을 생성할 수 있는 권한이 있어야 합니다.
  • secure_file_priv 설정: 보안 정책에 따라 특정 디렉터리에서만 내보내기가 허용될 수 있습니다. SHOW VARIABLES LIKE 'secure_file_priv'; 명령으로 허용된 경로를 미리 확인하세요.
  • 동일 파일명 덮어쓰기 불가: 같은 이름의 파일이 이미 존재하면 오류가 발생하므로 항상 새로운 파일명을 사용해야 합니다.
  • 출력 형식 지정: FIELDS TERMINATED BY ',', LINES TERMINATED BY '\n' 같은 옵션을 추가하면 CSV 형식 등 원하는 포맷으로 손쉽게 출력할 수 있습니다.