程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql導出逗號分隔的csv文件

Mysql導出逗號分隔的csv文件

編輯:MySQL綜合教程

Mysql導出逗號分隔的csv文件


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 文件已經存在 \

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved