![쉘 스크립트를 사용하여 테이블 데이터를 .csv 파일로 내보내는 방법](https://linux55.com/image/79121/%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%85%8C%EC%9D%B4%EB%B8%94%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%A5%BC%20.csv%20%ED%8C%8C%EC%9D%BC%EB%A1%9C%20%EB%82%B4%EB%B3%B4%EB%82%B4%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
mysql 서버에서 데이터를 가져와서 .csv 파일로 내보내야 합니다. 매일 자동으로 데이터를 새로운 .csv 파일로 내보내야 합니다.
쿼리: 상태=1이고 create_date가 '2015-12-05' AND '2015-12-06'인 tabpush에서 count(*) count,create_date를 선택하고 order by create_date desc;
어떻게 해야 하나요?
환경:
운영 체제: centos6.6
답변1
MySQL의 select ... into outfile을 사용하면 쉽게 이를 달성할 수 있습니다. 예를 들어:
select count(*) count,create_date from tabpush
where status=1 and create_date between subdate(current_date, 1) AND current_date()
order by create_date desc
INTO OUTFILE '/tmp/daily.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';