Bạn có thể lưu kết quả truy vấn vào tệp .CSV bằng cách sử dụng SELECT ... INTO OUTFILE
tuyên bố.
Bạn chỉ định tên / vị trí của tệp cũng như các tùy chọn khác, chẳng hạn như dấu kết thúc trường, dấu kết thúc dòng, v.v.
Đây là một ví dụ cơ bản.
CHỌN * TỪ Khách hàngINTO OUTFILE '/tmp/customers.csv';
Thao tác này sẽ chọn tất cả các cột từ Khách hàng bảng và đưa chúng vào một tệp .CSV có tên là customer.csv trong / tmp thư mục.
Tùy chọn bổ sung
Bạn có thể chỉ định cách các trường và dòng được kết thúc bằng cách sử dụng FIELDS TERMINATED
và LINES TERMINATED
mệnh đề.
Bạn cũng có thể chỉ định các ký tự để bao quanh mỗi giá trị bằng cách sử dụng ENCLOSED BY
mệnh đề.
Và bạn có thể sử dụng FIELDS ESCAPED BY
mệnh đề kiểm soát cách viết các ký tự đặc biệt.
Đây là truy vấn một lần nữa, lần này sử dụng một số mệnh đề bổ sung đó:
CHỌN * TỪ KHÁCH HÀNGINTO OUTFILE '/tmp/customers.csv'Thêm tiêu đề
Các ví dụ trước sẽ tạo tệp .CSV với kết quả của truy vấn, nhưng không có tên cột. Điều này có nghĩa là tệp .CSV sẽ không có tiêu đề trên dòng đầu tiên.
Để bao gồm tên cột (để tệp .CSV chứa tiêu đề trên dòng đầu tiên), bạn có thể mã hóa chúng trong một
SELECT
khác , được thêm vào phần còn lại của truy vấn bởi mộtUNION ALL
nhà điều hành.Dưới đây là một ví dụ về một truy vấn khác (phức tạp hơn một chút). Trong ví dụ này, chúng tôi thêm tiêu đề cột vào tệp .CSV:
/ * Thêm tiêu đề cột * / CHỌN 'OrderId', 'CustomerID', 'EmployeeID', 'OrderDate', 'RequiredDate', 'ShippedDate', 'ShipVia', 'Freight', 'ShipName', 'ShipAddress' , 'ShipCity', 'ShipRegion', 'ShipPostalCode', 'ShipCountry', 'OrderID', 'ProductId', 'UnitPrice', 'Số lượng', 'Giảm giá' TẤT CẢ / * Bây giờ là truy vấn thực tế * / SELECT o.OrderId , o.CustomerID, o.ErantyeeID, o.OrderDate, o.RequiredDate, o.ShippedDate, o.ShipVia, o.Freight, o.ShipName, o.ShipAddress, o.ShipCity, o.ShipRegion, o.ShipPostalCode, o .ShipCountry, od.OrderID, od.ProductId, od.UnitPrice, od.Quantity, od.Discount TỪ `Đơn đặt hàng` o LEFT JOIN` Order Details` od ON od.OrderID =o.OrderID / * Lưu kết quả truy vấn vào a tệp * / INTO OUTFILE '/tmp/orders.csv'FIELDS ĐƯỢC CHẤM DỨT BỞI', 'ĐƯỢC CHỨNG MINH BỞI' "" CÁC DÒNG ĐƯỢC CHẤM DỨT BỞI '\ n';Sử dụng MySQL Workbench GUI
Bạn cũng có thể sử dụng MySQL Workbench GUI để xuất kết quả của một truy vấn.