mysql导出含有字段列csv文件
来源:互联网 发布:python tkinter 滚动条 编辑:程序博客网 时间:2024/05/22 15:00
mysql导出文本文件想必大家觉得很简单,使用select导出呀!当时我也认为很简单,但在业务提的一些需求中总会碰到一些小坑,下面我就总结下自己在导出的时候碰到的几个小问题:
- 数据库装在linux下,编码是UTF8,导出的csv文件提供给业务在WINDOWS都是一堆乱码
- csv文件打开后没有字段列,对业务分析数据较困难
解决思路1:
为了把上面两个问题解决,我首先想到了本人经常使用的数据库连接工具RazorSQL,导出方法
选择一张需导出的表右击后点击Export Data
点击Export Data之后可以选择导出方式中的xls文件
3.然后一直下一步完成即可
注: 在一些小表中导出没有问题,可能就是时间稍微长一点,但是表记录超过65536行导出报错,为了解决
这个问题我就想着使用命令行导出,于是百度上查呀(花了很长时间去看别人写的博客),虽然可以解决
导出时间上的提升,但是编码问题还是没有解决,博客看了不少还是没有找到乱码及含字段列的问题,
这下百度死心了,搜索mysql去看官网资料select的语法找到了导出可以指定编码,没看到可以导出列
字段(可能英语水平不好没看出)
切记: 碰到问题第一时间看官网资料,然后在百度(我是比较排斥英语文档所以总是浪费了一段时间才去看官
网资料
根据官网资料有了思路二:
官网文档
https://dev.mysql.com/doc/refman/5.7/en/select.html
- 在mysql官网中没看到列信息,于是想到拼列字段信息和表的查询结果union all 导出
- 由于windows的编码一般是GBK,于是指定GBK编码导出,语法如下:
select * from
(
select
“id”
,”origin_id”
,”userid”
,”username”
,”sex”
,”address”
,”authenticate_type”
,”introduction”
,”level”
,”attentionNum”
,”fansNum”
,”weiboNum”
,”weibo_id”
,”pubdate”
,”pubtime”
,”topic”
,”emotion_tag”
,”@who”
,”isOriginal”
,”ForwardWho”
,”commentNum”
,”ForwardNum”
,”likeNum”
,”url”
,”content”
,”come_from”
from dual
union all
select * from
dispute_event_2_20170502
) b
into outfile ‘/yan/a.csv’
CHARACTER SET GBK
fields terminated by ‘,’ optionally enclosed by ‘”’
lines terminated by ‘\r\n’ ;
3.ftp传到WINDOW下查看符合要求
注: 拼字段使用了虚拟表dual;into outfile后面指定编码;select “xx” from dual拼自己表的真实字段名
本人编写了一个比较灵活的导出CSV文件脚本,见指定SQL文本导出CSV标题的博客
- mysql导出含有字段列csv文件
- MySQL导入含有中文字段(内容)CSV文件乱码解决方法
- MySQL导入含有中文字段(内容)CSV文件
- mysql 导出CSV文件 并带表头or字段
- mysql导出csv文件
- mysql 导出csv文件
- MySQL导出csv文件
- MySQL导入导出CSV文件
- MySQL导入导出CSV文件
- MySQL导入导出CSV文件
- mysql导入导出csv文件
- MySQL导入导出CSV文件
- mysql导入/导出CSV文件
- mysql导入导出csv文件
- MySQL导入导出csv文件
- MySql数据库导出csv文件
- csv文件导出时分列问题
- MySQL导出和导入含有二进制字段的数据
- linux 安装mysql
- kafka topic
- 网络地址转换NAT工作原理及常见NAT代理服务器
- 蓝桥杯 机器人繁殖
- C#5.0 In A NutShell翻译勘误
- mysql导出含有字段列csv文件
- 树莓派学习笔记——GPIO功能学习
- crontab
- Linux查看磁盘使用情况命令
- 顺序队列-数据结构(10)
- 《java多线程编程技术核心》读书笔记9
- 核函数(Kernels)
- Spring MVC自定义拦截器
- 函数重载 函数模板