Unix/*Nix계통 팁

MySQL의 쿼리를 파일로 저장하기

ForceCore 2007. 2. 25. 10:15

커맨드라인 MySQL을 사용할 때 그 결과를 text로 덤프하고 싶을 때가 생길 수 있다.

그런 때...

 

SELECT order_id,product_name,qty
    FROM orders
    INTO OUTFILE '/tmp/orders.csv'
        FIELDS TERMINATED BY ','
        ENCLOSED BY '"'
        LINES TERMINATED BY '\n'

 

그 쿼리 결과를 파일로 저장할 때는 INTO를 쓰게 된다.

1. 그 파일은 MySQL데몬이 파일을 write할 수 있는 곳에 지정되어야 하고 (가령 tmp라든지)

2. 파일이 존재하면 안된다. overwrite하지 않을 것이기 때문 (? 안 해봤다.)

기타 다른 옵션으로 세부사항을 결정할 수 있는데...

 

fields terminated by : 쿼리의 결과 칼럼들이 무엇으로 분리되어있는지

enclosed by: "등으로 닫을 것인지 (빼먹으면 아무 부호도 안 붙이게 된다.)

lines terminated by : 각기 다른 결과들을 무엇으로 분리할 것인지.