2012-07-05 31 views
5

Làm cách nào tôi có thể đổi tên tên tệp bằng hàm concat? tôi muốn tên tập tin của tôi với một ngày, bất cứ ai có thể giúp tôi về điều này.Đổi tên outfile với ngày trong mysql

SET @OUTFILE = CONCAT(CONCAT('/xampp/htdocs/mysite/reports-', NOW()), '.csv'); 


SELECT * FROM `tbl_user` INTO OUTFILE @OUTFILE FIELDS TERMINATED BY ','ENCLOSED BY '"' LINES TERMINATED BY '\n' 
+0

vấn đề với truy vấn của bạn –

+0

tôi luôn luôn nhận được lỗi này là gì: # 1064 - Bạn có một lỗi trong cú pháp SQL của bạn; kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn cho cú pháp đúng để sử dụng gần '@OUTFILE – avien

+0

thực sự không quá quen thuộc trong concatination trong mysql, dù sao tôi chỉ muốn tên tệp của tôi là động, vì vậy mỗi khi tôi chạy truy vấn này, nó mang lại cho tôi một tên tập tin duy nhất với một ngày, ( – avien

Trả lời

9

bạn có thể làm điều gì đó like:

SET @sql_text = 
    CONCAT (
     "SELECT * FROM `tbl_user` into outfile '/xampp/htdocs/mysite/reports-" 
     , DATE_FORMAT(NOW(), '%Y%m%d') 
     , ".csv'" 
    ); 

PREPARE s1 FROM @sql_text; 
EXECUTE s1; 
DROP PREPARE s1; 
+0

wow, điều này giúp rất nhiều sir, cảm ơn bạn rất nhiều. – avien

+0

nếu trợ giúp của nó upvote và thiết lập như trên dấu hiệu V để thiết lập đó là câu trả lời đúng –

Các vấn đề liên quan