使用SELECT查询将大表导出到客户端计算机

时间:2018-12-30 14:17:05

标签: php mysql

我有一个表格,其中有超过一百万行。我通常用来创建要导出到csv的用户界面的带有标头和ajax的PHP导出脚本,无法处理许多行和超时。因此寻找替代方案

经过几天的挖掘,我从互联网上整理了以下脚本,该脚本下载得很好,但仅下载到本地服务器> mysql文件夹

我正在寻找的是创建一个php mysql脚本,这样我就可以让用户通过php用户界面本身将大表下载到csv中。

SELECT 'a', 'b', 'c' UNION ALL SELECT a,b,c INTO OUTFILE '2026.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM table ;

1 个答案:

答案 0 :(得分:1)

您需要从数据库中获取分页结果。

从LIMIT 0,100中选择*;此查询的结果必须放入一个变量中,然后按如下方式进行解析:

Export to CSV via PHP

将前100个元素放入csv之后,您必须从100到200进行取回,依此类推...然后重新打开csv,然后将100至200个元素依此类推。

然后最终将csv发送给用户。