Khi sử dụng trình bao dòng lệnh SQLite, bạn có thể xuất kết quả truy vấn của mình sang tệp CSV bằng cách sử dụng .mode
lệnh dot kết hợp với .output
hoặc .once
lệnh.
Bạn cũng có thể sử dụng .system
lệnh để mở tệp đó.
Xuất một truy vấn
Nếu bạn chỉ muốn xuất một truy vấn sang tệp CSV, hãy sử dụng .once
. Thao tác này xuất kết quả của câu lệnh SQL tiếp theo sang tệp được chỉ định, sau đó hoàn nguyên trở lại bảng điều khiển.
.headers on
.mode csv
.once query_results.csv
SELECT * FROM Products;
Trong trường hợp này, tôi bật tiêu đề cột. Sau đó, tôi chuyển sang chế độ “csv”, rồi sử dụng .once
lệnh để chỉ định rằng chỉ truy vấn tiếp theo mới được xuất sang tệp có tên query_results.csv .
Sau đó, tôi chạy truy vấn, kết quả được xuất sang tệp được chỉ định.
Nếu tôi mở tệp, đây là những gì nó chứa:
ProductId,ProductName,Price 1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0
Mọi truy vấn tiếp theo sẽ được xuất ra màn hình.
Nếu bạn không muốn tiêu đề cột, hãy sử dụng .headers off
thay vì .headers on
.
Xuất tất cả các truy vấn
Nếu bạn cần chạy nhiều truy vấn, tất cả đều phải được lưu / nối vào cùng một tệp CSV, sau đó sử dụng .output
.
.output query_results2.csv
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
Trong trường hợp này, tôi đặt tệp đầu ra, sau đó chạy hai truy vấn.
Đây là những gì tệp chứa:
ProductId,ProductName,Price 1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0 ProductId,ProductName,Price 1,"Widget Holder",139.5 2,"Widget Opener",89.7
Một lần nữa, nếu bạn không muốn tiêu đề cột, hãy sử dụng .headers off
.
Nếu bạn chỉ muốn tiêu đề cột trên dòng đầu tiên, thì bạn có thể bật chúng, sau đó tắt chúng sau khi bạn chạy truy vấn đầu tiên. Như thế này:
.headers on
.output query_results2.csv
SELECT * FROM Products;
.headers off
SELECT * FROM Products LIMIT 2;
Kết quả:
ProductId,ProductName,Price 1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0 1,"Widget Holder",139.5 2,"Widget Opener",89.7
Tự động mở tệp CSV
Bạn có thể sử dụng .system
để mở tệp CSV của bạn. Cú pháp chính xác mà bạn sử dụng sẽ tùy thuộc vào hệ thống của bạn.
Dưới đây là cách mở tệp trước đó trên máy Mac:
.system open query_results2.csv
Điều này giả sử bạn đang ở trong cùng một thư mục với tệp. Nếu không, bạn sẽ cần sử dụng đường dẫn đầy đủ.
Thao tác này sẽ mở tệp trong ứng dụng mặc định của hệ thống để mở tệp CSV. Ví dụ:đây có thể là Microsoft Excel, LibreOffice, trình soạn thảo văn bản mặc định của hệ thống của bạn, v.v.
Trên hệ thống Windows, mã của bạn có thể trông giống như sau:
.system c:/data/query_results2.csv
Trên Linux / Unix:
.system xdg-open query_results2.csv