服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - mysql导出指定数据或部份数据的方法

mysql导出指定数据或部份数据的方法

2020-03-19 15:40MYSQL教程网 Mysql

mysql虽然可以使用mysqldump来进行数据的到处,可是在很多场合的需求都不一样,比如我只要导出某个字段呢?只要导出某些我需要的数据呢?

这个时候mysqldump可能就不大好使了,使用下面的方法则可以解决这个问题。

方法一、insert和select结合使用

1、新建一个表,比如new-table,包含所要导出的字段的名称,比如a,b,c 
2、使用insert into new-table (a,b,c) select a,b,c from old-table; 
3、剩下的步骤就是导出这个新的表,然后进行文本的处理

方法二、使用MySQL的SELECT INTO OUTFILE 备份语句(推荐)

在下面的例子中,生成一个文件,各值用逗号隔开。这种格式可以被许多程序使用。

复制代码代码如下:

SELECT a,b,a+b INTO OUTFILE ‘/tmp/result.text' 
FIELDS TERMINATED BY ‘,' OPTIONALLY ENCLOSED BY ‘"' 
LINES TERMINATED BY ‘\n' 
FROM test_table;

 

详细见select的使用方法

 

复制代码代码如下:
select subject into outlifile ‘/tmp/xiaoruizi.text' fields terminated by ‘\t' optionally enclosed by ‘"' lines terminated by  ‘\n' from pw_blog;

 

方法三、使用mysqldump

很奇妙的是我发现了mysqldump其实有个很好用的参数“—w”

帮助文档上说明:

复制代码代码如下:

-w|–where= 
       dump only selected records; QUOTES mandatory!

 

那么是不是可以利用这个参数来导出某些值呢?比如我只要导出id大于2312387的某些数据:

 

复制代码代码如下:
mysqldump -u root -p bbscs6 BBSCS_USERINFO –where "ID>2312387" > BBSCS_USERINFO-par.sql

延伸 · 阅读

精彩推荐