Mysql导出逗号分隔的csv文件_MySQL

WBOY
풀어 주다: 2016-06-01 12:59:48
원래의
1633명이 탐색했습니다.

CleverCode在实际的工作中,经常需要将一些报表,或者日志数据等导出来,如果直接做页面,如果次数也不是很多,需求也不同。所以直接导出csv文件,更加直观。

1 导出csv文件

1.1 语句格式

SELECT [列名] FROM table [WHERE 语句] [order by 语句] [limit 语句]
INTO OUTFILE '目标文件' [OPTION];

1.2 参数说明

该语句分为两个部分。前半部分是一个普通的SELECT语句,通过这个SELECT语句来查询所需要的数据;后半部分是导出数据的。其中,“目标文件”参数指出将查询的记录导出到哪个文件中;“OPTION”参数为可选参数选项,其可能的取值有:
fields terminated by '字符串':设置字符串为字段之间的分隔符,可以为单个或多个字符。默认值是“\t”。
fields enclosed by '字符':设置字符来括住字段的值,只能为单个字符。默认情况下不使用任何符号。
fields optionally enclosed by '字符':设置字符来括住CHAR、VARCHAR和TEXT等字符型字段。默认情况下不使用任何符号。
fields escaped by '字符':设置转义字符,只能为单个字符。默认值为“\”。
lines starting by '字符串':设置每行数据开头的字符,可以为单个或多个字符。默认情况下不使用任何字符。
lines terminated by '字符串':设置每行数据结尾的字符,可以为单个或多个字符。默认值是“\n”。

1.3 重要提示

into outfile ‘目标文件’,目标文件是保存在mysql的服务器端,因为sql语句都是在服务器端执行了。所以执行完后目标文件会保存在mysql服务器端。into outfile '/tmp/test.csv',一般是mysql服务器是在linux上;into outfile 'E:/test.csv' ,一般是mysql服务器端在windows上。并且目标文件必须有写入权限,而且文件不能存在。

1.4 mysql服务器安装在linux举例

select 
    * 
from proxy_list 
order by id asc 
limit 0,2 
into outfile '/tmp/test.csv'  
fields 
    terminated by ',' 
    optionally enclosed by '"' 
    escaped by '"'  
    lines terminated by '\r\n'; 
로그인 후 복사

1.5 mysql服务器安装在windows举例

select 
	uid,
	nation
from system_user
order by uid asc
limit 0,2 
into outfile 'e:/test.csv' 
fields 
	terminated by ',' 
	optionally enclosed by '"' escaped by '"' 
lines 
	terminated by '\r\n'; 
로그인 후 복사


1.6 错误举例

1 无写入权限 \

2 文件已经存在 \

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!