MySQL 导出数据为csv格式的方法
方案有很多种,我这里简单说一下:
1. into outfile
SELECT * FROM mytable
INTO OUTFILE '/tmp/mytable.csv'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n';
在我使用过程中发现一个特别严重问题,这里面不能插入查询条件,比如where这些,也就是说只能整表导出,不知道是不是我的写法有问题,有知道朋友请给我留言。
第二个问题是,outfile的路径一定要有写权限,我们mysql的进程权限一般是mysql用户,因此最好导出到/tmp目录下面。
2. 通过结合sed
mysql -uroot test -e "select ip from server where a.name like '%abc%'" -N -s | sed -e 's/^/"/g;s/$/"\n/g'; > /tmp/test.csv
这里首先使用mysql命令的-e参数来执行sql语句,然后通过-N来去掉输出结果中列名,-s去掉输出结果中的各种划线。
然后使用sed命令输出结果中所有相关数据进行替换,其中替换了三处,1.在行首增加“,在行尾增加”和换行,在每个字段之间增加”,”来分隔。
3. 通过mysqldump来实现
mysqldump -u username -p -t -T/path/to/directory dbname table_name --fields-terminated-by=','
和1的方案差不多吧。
就当是一个笔记吧
相关推荐
-
MySQL如何导入csv格式数据文件解决方案
给自己做备份的,高手们请忽略. 数据太大,用数据库客户端软件直接导入非常卡,还是直接执行SQL吧. 1.指定文件路径. 2.字段之间以逗号分隔,数据行之间以\r\n分隔(我这里文件是以\n分隔的). 3.字符串以半角双引号包围,字符串本身的双引号用两个双引号表示. Sql代码 复制代码 代码如下: load data infile 'D:\\top-1m.csv' into table `site` fields terminated by ',' optionally enclosed by
-
Mysql 导入导出csv 中文乱码问题的解决方法
导入csv: 复制代码 代码如下: load data infile '/test.csv' into table table_name fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\r\n' ignore 1 lines; 导csv: 复制代码 代码如下: SELECT * INTO OUTFILE '/test.csv' FIELDS TERMIN
-
mysql使用SQLyog导入csv数据不成功的解决方法
今天给mysql导入数据,使用的软件是SQLyog,相信直接导大家也都会,选中某个表选择导入--导入使用本地csv数据即可,单有的时候不知道什么问题导入不成功,可以使用命令,以此记录,以后用到便于查: (我的是windows系统) LOAD DATA LOCAL INFILE 'C:\\Users\\zl\\Desktop\\zhishu.csv' INTO TABLE 库名.表名 CHARACTER SET gbk FIELDS TERMINATED BY ',' OPTIONALLY ENC
-
大容量csv快速内导入sqlserver的解决方法(推荐)
前言 在论坛中回答了一个问题,导入csv 数据,并对导入的数据增加一个新的列date datetime.要求在10s内完成,200w行数据的导入.分享下解决问题的思路和方法 分析 通常来讲Bulk insert 比 BCP 更快一点,我们选择Bulk insert的方式. 提出的解决方案:先把数据导入到sql server 的临时表,然后再插入目标表. 具体语句如下: bulk insert test07232 from 'D:\2017-7-22.csv' WITH ( FIELDTERMIN
-
把CSV文件导入到SQL Server表中的方法
有时候我们可能会把CSV中的数据导入到某个数据库的表中,比如做报表分析的时候. 对于这个问题,我想一点也难不倒程序人员吧!但是要是SQL Server能够完成这个任务,岂不是更好! 对,SQL Server确实有这个功能. 首先先让我们看一下CSV文件,该文件保存在我的D:盘下,名为csv.txt,内容是: 现在就是SQL Server的关键部分了: 我们使用的是SQL Server的BULK INSERT命令,关于该命令的详细解释,请点击此处: 我们先在SQL Server中建立用于保存该信息
-
php将csv文件导入到mysql数据库的方法
本文实例讲述了php将csv文件导入到mysql数据库的方法.分享给大家供大家参考.具体分析如下: 本程序实现数据导入原理是先把csv文件上传到服务器,然后再通过php的fopen与fgetcsv文件把数据保存到数组,然后再用while把数据一条条插入到mysql数据库,代码如下: 复制代码 代码如下: <?php $fname = $_files['myfile']['name']; $do = copy($_files['myfile']['tmp_name'],$fname); if ($
-
oracle使用sql脚本生成csv文件案例学习
脚本内容如下: 复制代码 代码如下: set linesize 3000; set heading off; set feedback off; set term off; set pagesize 0; set trimspool on; spool a.csv; select c1_name||','||c2_name from dual; select c1||','||c2 from tbtest spool off;
-
MySQL 导出数据为csv格式的方法
方案有很多种,我这里简单说一下: 1. into outfile 复制代码 代码如下: SELECT * FROM mytable INTO OUTFILE '/tmp/mytable.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'; 在我使用过程中发现一个特别严重问题,这里面不能插入查询条件,比如where这些,也就是说只能整表导出,不知道是不是我的写法有问题,
-
利用python将json数据转换为csv格式的方法
假设.json文件中存储的数据为: {"type": "Point", "link": "http://www.dianping.com/newhotel/22416995", "coordinates": [116.37256372996957, 40.39798447055443], "category": "经济型", "name": &qu
-
Oracle SQLPlus导出数据到csv文件的方法
时不时地我们需要导出一些数据用作备份.查看报表等,如果用Sql Developer导出会非常慢.而用SqlPlus,则速度非常快. 准备SQL执行文件export.sql: set colsep , set feedback off set heading off set newp none set pagesize 0 set linesize 200 set trimout on spool /data/export.csv select t.name||','||t.age||','||t
-
php使用指定编码导出mysql数据到csv文件的方法
本文实例讲述了php使用指定编码导出mysql数据到csv文件的方法.分享给大家供大家参考.具体实现方法如下: <?php /* * PHP code to export MySQL data to CSV * * Sends the result of a MySQL query as a CSV file for download * Easy to convert to UTF-8. */ /* * establish database connection */ $conn = mysq
-
完美解决php 导出excle的.csv格式的数据时乱码问题
1.header('Content-Encoding: XXXX'); 有可能是编码问题:可以尝试UTF-8,GBK,GB2312,等编码格式 2.有可能是文件编码问题,虽然UTF-8不建议带BOM,但是导出的excle是微软的产品,所以需要把文件格式改成,UTF-8有BOM格式的. 以上这篇完美解决php 导出excle的.csv格式的数据时乱码问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
python 借助numpy保存数据为csv格式的实现方法
借助numpy可以把数组或者矩阵保存为csv文件,也可以吧csv文件整体读取为一个数组或矩阵. 1.csv ==> matrix import numpy my_matrix = numpy.loadtxt(open("D:\\test.csv","rb"), delimiter=",", skiprows=0) 2.matrix ==> csv import numpy numpy.savetxt("new.csv&quo
-
Mysql导出数据的正确方法
之前折磨了很久,想在Mysql命令行下导出数据库,但就是每天提示不那个错误,后来才知道其实mysqldump不是mysql命令,因此不能在Mysql命令行下导出. 下面是错误的做法: . 下面才是正确的做法: 即:mysql导出数据库命令只能在系统命令行下使用,而不能在mysql命令行下使用.
-
详解Mysql导出数据的几种方式
MySQL导出数据的目的有很多种,如数据库备份.表结构导出.表数据导出.分析数据采取等. Part1 select into outfile 先说最短小精悍的select into outfile, 这是小型数据库分析数据最常用的采集数据方式,具体语法如下: [select 语句] into outfile [导出文件名] [导出参数] [select语句]是经典的查询SQL,可以指定列.可以有where条件.group.order.limit等. [导出文件名]是目标文件的完整路径.由于mys
-
MySQL导出所有Index和约束的方法
本文汇总了MySQL导出所有Index 和 约束的方法,提供给大家以方便大家查询使用.具体如下: 1. 导出创建自增字段语句: SELECT CONCAT( 'ALTER TABLE `', TABLE_NAME, '` ', 'MODIFY COLUMN `', COLUMN_NAME, '` ', IF(UPPER(DATA_TYPE) = 'INT', REPLACE( SUBSTRING_INDEX( UPPER(COLUMN_TYPE), ')', 1 ), 'INT', 'INTEG
-
Python实现导出数据生成excel报表的方法示例
本文实例讲述了Python实现导出数据生成excel报表的方法.分享给大家供大家参考,具体如下: #_*_coding:utf-8_*_ import MySQLdb import xlwt from datetime import datetime def get_data(sql): # 创建数据库连接. conn = MySQLdb.connect(host='127.0.0.1',user='root'\ ,passwd='123456',db='test',port=3306,char
随机推荐
- bat/cmd批处理连接SqlServer数据库查询脚本
- VMWare Workation双网卡配置IP地址的图文教程
- JavaScript字符串常用的方法
- asp.net利用存储过程实现模糊查询示例分享
- python合并文本文件示例
- Docker使用过程中的一些注意事项
- JavaScript常见的五种数组去重的方式
- C++实现自顶向下的归并排序算法
- 常用排序算法整理分享(快速排序算法、希尔排序)
- JS对HTML标签select的获取、添加、删除操作
- 推荐 21 款优秀的高性能 Node.js 开发框架
- js no-repeat写法 背景不重复
- winform异型不规则界面设计的实现方法
- 关于PHP的curl开启问题探讨
- C++面试常见问题整理汇总
- 玩转网络MAC地址
- rip协议理解
- IE地址栏消失问题的巧妙解决
- Tensorflow 利用tf.contrib.learn建立输入函数的方法
- 解决Python requests库编码 socks5代理的问题