SQL 导入导出 Excel 数据通常使用两个功能,一个是导出数据到 Excel 表格,另一个是将 Excel 表格中的数据导入到 SQL 数据库中,下面将分别介绍这两个操作的完整攻略。
导出数据到Excel
SQL 导出数据到 Excel 可以使用 SELECT INTO OUTFILE 语句。该语句会将查询结果导出到指定的文件中,我们可以将指定的文件扩展名设置为 .xls 或 .xlsx 格式,这样导出的文件就是一个 Excel 文件。
SELECT column_name, column_name
INTO OUTFILE '/tmp/result.xls'
FROM table_name;
这个示例中,我们使用 SELECT INTO OUTFILE 语句将 table_name 表中的指定列数据导出到 /tmp/result.xls 文件中。
另一种常用的方法是使用 MySQL 的命令行工具 mysqldump,在导出时指定格式和文件名即可,例如:
mysqldump -u root -p database_name table_name > /tmp/result.xlsx
这个示例中,我们将 database_name 库中的 table_name 表导出到 /tmp/result.xlsx 文件中,-u 表示指定用户名,-p 表示输入密码。
将Excel数据导入到SQL
使用 Excel 中的数据导入到 SQL 数据库时,需要将 Excel 文件转换成可以被导入的格式,例如 CSV 格式。可以使用 Excel 中的“另存为”功能,将文件另存为 CSV 格式。
然后,可以使用 LOAD DATA INFILE 语句将 CSV 文件中的数据导入到 SQL 数据库中,示例如下:
LOAD DATA INFILE '/tmp/result.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
这个示例中,我们将 /tmp/result.csv 文件中的数据导入到 table_name 表中,每个字段使用逗号分隔,每一行以换行符分隔,忽略第一行作为标题行。
另外,还可以使用 MySQL 的命令行工具 mysqlimport 来导入 CSV 文件,示例如下:
mysqlimport -u root -p --fields-terminated-by=',' \
--lines-terminated-by='\n' \
--ignore-lines=1 \
database_name /tmp/result.csv
这个示例中,我们将 /tmp/result.csv 文件中的数据导入到 database_name 库中,使用 -u 指定用户名,-p 指定密码,--fields-terminated-by 指定字段分隔符,--lines-terminated-by 指定行分隔符,--ignore-lines 指定忽略多少行。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SQL 导入导出Excel数据的语句 - Python技术站