[zz]Mysql如何导出某个表中的某一列或几列?

[zz]Mysql如何导出某个表中的某一列或几列?,第1张

需求:需要导出某个表中的某个列,输出到一个文件.解决方法1:(未实践)在mysql后台数据库中用select * into outfile命令:mysql>select id from table into outfile 'mysql data所在的目录'(注意:输出的文件目录必须是在mysql,data_dir所在目录,否则,会提示:ERROR 1 (HY000): Can't create/write to file '/home/pu/mysql/test' (Errcode: 13) 解决方法2:在shell环境上,执行#mysql -uroot -ppassword -e "select id from databases.table">test

方法一、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

1、打开电脑左下角【开始菜单】,在右侧找到【运行】选项

2、在d出的运行栏输入【cmd】,点击确定

3、在d出的cmd命令行界面输入【exp】命令,点击回车

4、此时进入oracle命令行界面,输入用户名和密码,点击回车

5、登录成功设置导出数据参数,选择数据文件导出路径,点击回车

6、参数设置完成,此时进行导出表数据 *** 作

7、 *** 作完成找到存放的路径,可以看到此书生成一个DMP文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10076477.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存