[질문] MYSQL에서 질의 결과를 파일로 뽑아내는 방법. 제발 좀
아래 질의를 하면 결과가 아래와 같이 나오는데요.
이 질의의 결과를 파일로 저장하고 싶습니다. 단, 오늘로 부터 1주일 전까지만의 데이터를 뽑고,
이를 오늘날짜의 파일 이름으로 백업 받고자 합니다. 예를 들어 오늘이 7월 20일이면, 7월 14일 부터, 7월 20일까지의 데이터를 뽑아서. call_0720.txt 라는 파일로 뽑고 싶습니다.
방법이 있는지요.
select PHONE, CALLING_NUMBER, START_TIME from CALLUSE WHERE PHONE IN ('311') and length(CALLING_NUMBER) <= 6;
+-------+----------------+---------------------+
| PHONE | CALLING_NUMBER | START_TIME |
+-------+----------------+---------------------+
| 311 | 311 | 2005-07-20 19:35:54 |
| 311 | 311 | 2005-07-20 19:32:48 |
| 311 | 311 | 2005-07-20 19:04:11 |
| 311 | 311 | 2005-07-20 12:19:10 |
| 311 | 311 | 2005-07-20 12:18:00 |
| 311 | 311 | 2005-07-20 12:09:12 |
| 311 | 311 | 2005-07-19 21:26:16 |
| 311 | 311 | 2005-07-19 21:10:00 |
| 311 | 311 | 2005-07-19 21:05:24 |
| 311 | 311 | 2005-07-19 21:01:26 |
| 311 | 311 | 2005-07-18 19:13:39 |
| 311 | 311 | 2005-07-18 19:13:57 |
| 311 | 311 | 2005-07-18 19:15:59 |
| 311 | 311 | 2005-07-18 19:23:33 |
| 311 | 311 | 2005-07-18 19:24:28 |
| 311 | 311 | 2005-07-18 19:24:29 |
| 311 | 311 | 2005-07-18 19:24:30 |
| 311 | 311 | 2005-07-18 19:24:38 |
| 311 | 311 | 2005-07-18 19:24:39 |
+-------+----------------+---------------------+
19 rows in set (0.00 sec)
일단 질의는 하겠는데, 오늘 부터 1주일전치의 데이터를 뽑는 방법을 모르겠습니다.
파일로 뽑는 방법과 날짜 계산하는 법...
select ... into outfile 'filename' from ... 구문으로 파일로 뽑구요
날짜 계산은 date_sub 함수를 쓰시면 되겠습니다.
-> date_sub(now(), interval 7 day)
대략 아래와 같은 SQL문이 되겠군요
select PHONE, CALLING_NUMBER, START_TIME into outfile 'call_0720.txt' from CALLUSE WHERE PHONE IN ('311') and length(CALLING_NUMBER) <= 6 and START_TIME < date_sub(now(), interval 7 day);
원하는 파일명을 만드는 방법은 모르겠군요. 이건 MySQL client 에서보다는 외부에서 스크립트를 만드는게 낫겠는데요?
일주일은..
일정기간에 대한 쿼리를 원하신다면..
DATE_SUB라는 날짜에 대한 빼기 연산을 하는 함수를 이용하시면 됩니다.
예를 들면 일주일이라면 7일..
현재날짜부터 7일 전의 날짜를 구해서 조건을 주는것입니다.
DATE_SUB( NOW() , INTERVAL 7 DAY)
DAY, MONTH, YEAR 등의 활용이 가능합니다.
이런식으로 쿼리를 하시면 될것 같습니다.
그리고 그 쿼리 결과를 파일에 저장하시고 싶다면..
-e 옵션을 활용하여 직접 쿼리를 수행하고 파일로 리다이렉트 하시면 될듯합니다.
그리고 -t 옵션을 넣어주시면.. 테이블 모양 도 같이 출력됩니다.
$ mysql -u 유저명 DB명 -p -e "쿼리" -t > 저장할 파일명
-----
늘 여유가 함께하길..
아아.. 제출 누르고 나니 어느새 먼저 답변이.. :cry:
아아.. 제출 누르고 나니 어느새 먼저 답변이.. :cry:
-----
늘 여유가 함께하길..
댓글 달기