執行SQL語句
select fullname,time,endtime,closed from chat_archive into outfile 'c:/xxx.xls'
注意:因為office默認的是gb2312編碼,服務器端生成的很有可能是utf-8編碼,此時有幾種選擇
1、把查詢出來的結果轉換為GB2312格式(字段fullname)
selectconvert(fullname using gb2312)from chat_archive into outfile 'c:/xxx.xls'
2、在服務器端使用iconv來進行編碼轉換
iconv -futf8 -tgb2312 -otest2.xls femm.xls
如果轉換順利,那麼從server上下載下來就可以使用了。
3.轉換如果不順利,則會提示:iconv: illegal input sequence at position 1841 類似於這樣的錯誤,
先把femm.xls下載下來,這個時候文件是utf-8編碼的,用excel打開,亂碼。
把femm.xls以文本方式打開,然後另存為,在編碼選擇ANSI編碼,保存。
引申:如何帶表頭輸出Excel?
select convert("用戶號" using gb2312),convert("用戶名" using gb2312) from dual union select convert(userno using gb2312),convert(username using gb2312) from t_users into outfile 'd://users.xls';
注意:
1、使用合併的查詢結果集 但是union會過濾掉重複記錄 不過濾使用union all
2、如果保存的不是磁盤根目錄,而是某個文件夾,需要將文件夾先創建好