如何将数据导出到文件名为其创建的时间戳的 CSV 文件中?


有时我们需要导出数据到 CSV 文件中,此文件名包含创建该文件的时间戳。这可以用 MySQL 预处理语句完成。为了说明,我们使用以下示例 −

示例

以下示例中的查询将把数据从表“student_info”导出到 CSV 文件,并在其名称中带有时间戳。

mysql> SET @time_stamp = DATE_FORMAT(NOW(),'_%Y_%m_%d_%H_%i_%s');
Query OK, 0 rows affected (0.00 sec)

mysql> SET @FOLDER = 'C:/mysql/bin/mysql-files';
Query OK, 0 rows affected (0.00 sec)

mysql> SET @FOLDER = 'C:/mysql/bin/mysql-files/';
Query OK, 0 rows affected (0.00 sec)

mysql> SET @PREFIX = 'Student15';
Query OK, 0 rows affected (0.00 sec)

mysql> SET @EXT = '.CSV';
Query OK, 0 rows affected (0.00 sec)

mysql> SET @Command = CONCAT("SELECT * FROM Student_info INTO OUTFILE '",@FOLDER, @PREFIX, @time_stamp, @EXT,"' FIELDS ENCLOSED BY '\"' TERMINATED BY ';'
ESCAPED BY '\"'"," LINES TERMINATED BY '\r
';"); Query OK, 0 rows affected (0.00 sec) mysql> PREPARE stmt FROM @command; Query OK, 0 rows affected (0.00 sec) Statement prepared mysql> execute stmt; Query OK, 6 rows affected (0.07 sec)

以上查询将创建一个名为“student_2017_12_10_18_52_46.CSV”的 CSV 文件,即具有时间戳值且包含以下数据的 CSV 文件 −

101;"YashPal";"Amritsar";"History"
105;"Gaurav";"Chandigarh";"Literature"
125;"Raman";"Shimla";"Computers"
130;"Ram";"Jhansi";"Computers"
132;"Shyam";"Chandigarh";"Economics"
133;"Mohan";"Delhi";"Computers"

上次更新: 2020-02-07

483 人查看

开启你的 职业生涯

完成课程,获得认证

开始学习
广告