Các tệp CSV chứa văn bản thuần túy và là một định dạng nổi tiếng mà mọi người đều có thể đọc được, kể cả Pandas
Trong các ví dụ của chúng tôi, chúng tôi sẽ sử dụng tệp CSV có tên là 'data. csv'
Tải xuống dữ liệu. csv. hoặc Mở dữ liệu. csv
Thí dụ
Tải CSV vào DataFrame
nhập gấu trúc dưới dạng pd
df = pd. read_csv['dữ liệu. csv']
in [df. to_string[]]
Tự mình thử »Mẹo. sử dụng to_string[]
để in toàn bộ DataFrame
Nếu bạn có một DataFrame lớn với nhiều hàng, Pandas sẽ chỉ trả về 5 hàng đầu tiên và 5 hàng cuối cùng
Thí dụ
In DataFrame mà không cần phương thức to_string[]
nhập gấu trúc dưới dạng pd
df = pd. read_csv['dữ liệu. csv']
in [df]
Tự mình thử »max_rows
Số lượng hàng được trả về được xác định trong cài đặt tùy chọn Pandas
Bạn có thể kiểm tra số hàng tối đa của hệ thống bằng câu lệnh pd.options.display.max_rows
Thí dụ
Kiểm tra số lượng hàng được trả về tối đa
nhập gấu trúc dưới dạng pd
in [pd. tùy chọn. trưng bày. max_rows]
Tự mình thử »Trong hệ thống của tôi, số này là 60, có nghĩa là nếu DataFrame chứa hơn 60 hàng, thì câu lệnh print[df]
sẽ chỉ trả về các tiêu đề và 5 hàng đầu tiên và cuối cùng
Lệnh này sẽ hiển thị cho bạn thư mục đã được cấu hình. Bạn chỉ có thể lưu trữ tệp đầu ra của mình trong thư mục này
Bước 2
- Chọn tất cả dữ liệu từ bảng và chỉ định vị trí của tệp đầu ra
TABLE tableName
INTO OUTFILE 'path/outputFile.csv'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY ''
LINES TERMINATED BY 'n';
- Đảm bảo sử dụng. phần mở rộng csv cho tệp đầu ra của bạn
- Mệnh đề ORDER có thể được sử dụng để sắp xếp dữ liệu theo một thuộc tính cụ thể
- Mệnh đề LIMIT được sử dụng để hạn chế số lượng hàng được sao chép vào tệp đầu ra
a. Xuất các cột đã chọn của bảng
- Để làm điều này, bạn có thể sử dụng câu lệnh SELECT để chỉ định các cột bạn muốn xuất
- Ngoài ra, bạn có thể sử dụng mệnh đề WHERE để sử dụng các điều kiện cụ thể và lọc kết quả
SELECT columnName, ….
FROM tableName
WHERE columnName = 'value';
b. Xuất bảng có dấu thời gian
Bạn có thể muốn thêm dấu thời gian vào tệp đã xuất, để làm điều đó, bạn phải sử dụng câu lệnh chuẩn bị sẵn của MySQL
Sử dụng lệnh sau để xuất sang tệp CSV và thêm dấu thời gian cho thời gian tệp được tạo
SET @TS = DATE_FORMAT[NOW[],'_%Y_%m_%d_%H_%i_%s'];
SET @FOLDER = '/var/lib/sql-files/';
SET @PREFIX = 'employees';
SET @EXT = '.csv';
SET @CMD = CONCAT["SELECT * FROM tableName INTO OUTFILE '",@FOLDER,@PREFIX,@TS,@EXT,
"' FIELDS ENCLOSED BY '"
' TERMINATED BY ','
ESCAPED BY '"'",
"LINES TERMINATED BY 'n';"];
PREPARE statement FROM @CMD;
EXECUTE statement;
c. Xuất với tiêu đề cột
Việc thêm tiêu đề cột vào tệp đầu ra thường thuận tiện để xác định và phân tích dữ liệu tốt hơn. Để làm điều này, bạn phải sử dụng câu lệnh UNION
Sử dụng lệnh sau để thêm tiêu đề cột
[SELECT 'columnHeading', ...]
UNION
[SELECT column, ...
FROM tableName
INTO OUTFILE 'path-to-file/outputFile.csv’'
FIELDS ENCLOSED BY '"'
TERMINATED BY ','
ESCAPED BY '"'
LINES TERMINATED BY 'n']
d. Xử lý giá trị NULL
Nếu kết quả của bạn chứa giá trị NULL, chúng sẽ xuất hiện dưới dạng 'N' trong tệp xuất thay vì NULL. Điều này có thể dẫn đến nhầm lẫn và do đó, bạn có thể muốn thay thế chuỗi 'N' này bằng một chuỗi như NA [không áp dụng] có ý nghĩa hơn
Sử dụng lệnh sau để làm điều đó
SELECT column, column, IFNULL[column, 'NA']
FROM tableName INTO OUTFILE 'path-to-file/outputFile.csv'
FIELDS ENCLOSED BY '"'
TERMINATED BY ','
ESCAPED BY '"'
LINES TERMINATED BY 'n'];
2. Sử dụng mysqldump
mysqldump là một công cụ tiện ích được cung cấp bởi máy chủ MySQL cho phép người dùng xuất bảng, cơ sở dữ liệu và toàn bộ máy chủ. Hơn nữa, nó cũng được sử dụng để sao lưu và phục hồi
Ở đây, chúng ta sẽ thảo luận về cách sử dụng mysqldump để xuất bảng MySQL sang CSV
- Sử dụng lệnh sau trong dấu nhắc lệnh/thiết bị đầu cuối
mysqldump -u [username] -p -t -T/path/to/directory [database] [tableName] --fields-terminated-by=,
- Lệnh đã cho sẽ tạo một bản sao của bảng được chỉ định bởi tableName tại vị trí bạn xác định bằng tùy chọn -T
- Tên của tệp sẽ giống với tên của bảng và sẽ có một. phần mở rộng txt
3. Sử dụng bàn làm việc của MySQL
MySQL Workbench cung cấp Trình hướng dẫn Nhập/Xuất cho phép bạn xuất cơ sở dữ liệu/bảng của chúng tôi sang định dạng được chỉ định bằng giao diện người dùng đồ họa. Trình hướng dẫn hỗ trợ các định dạng JSON và CSV
Để tải xuống MySQL Workbench, bấm vào đây.
Bạn có thể làm theo các bước đã cho để xuất bảng MySQL của mình bằng MySQL Workbench
Bước 1
- Sử dụng tab “lược đồ” ở thanh bên trái để tìm bảng bạn muốn xuất
Trong ví dụ này, chúng tôi sẽ xuất bảng của nhân viên trong cơ sở dữ liệu của mô hình cổ điển
Bước 2
- Nhấp chuột phải bằng chuột vào bảng và chọn “Trình hướng dẫn xuất dữ liệu bảng” để có màn hình sau
- Chọn các cột bạn muốn xuất
Bước 3
- Nhấp vào Tiếp theo
- Duyệt đến thư mục mà bạn muốn lưu tệp đầu ra
- Chọn tùy chọn định dạng CSV
Bước 4
- Nhấp vào Tiếp theo
- Dữ liệu của bạn sẽ bắt đầu xuất
- Bạn có thể theo dõi quá trình thông qua nhật ký
4. Sử dụng phpMyAdmin
phpMyAdmin cung cấp giao diện người dùng đồ họa để xuất bảng MySQL của bạn ở các định dạng khác nhau. Ngoài CSV, nó hỗ trợ các định dạng khác như XML, JSON, YAML và nhiều định dạng khác
Để tải xuống phpMyAdmin, hãy nhấp vào đây
Để sử dụng phpMyAdmin để xuất dữ liệu, hãy làm theo các bước sau
Bước 1
- Đăng nhập vào phpMyAdmin bằng người dùng có quyền yêu cầu
- Điều hướng đến cơ sở dữ liệu chứa bảng nguồn như được hiển thị
Bước 2
- Chọn bảng từ cơ sở dữ liệu
- Nhấp vào Xuất ở thanh trên cùng
Bước 3
- Chọn định dạng CSV từ trình đơn định dạng thả xuống
- Nhấp vào Đi
- Chọn tùy chọn lưu tệp khi được nhắc
5. Sử dụng Công cụ CSV
Công cụ lưu trữ CSV lưu trữ dữ liệu trong tệp văn bản sử dụng định dạng giá trị được phân tách bằng dấu phẩy và luôn được biên dịch vào máy chủ MySQL
Điều quan trọng cần lưu ý là phương pháp này chỉ có thể được sử dụng nếu bảng không có chỉ mục hoặc ràng buộc AUTO_INCREMENT
ALTER TABLE tableName ENGINE=CSV;
Lệnh này thay đổi định dạng của cơ sở dữ liệu thành CSV. Sau đó, nó có thể được sao chép trực tiếp sang hệ thống khác một cách dễ dàng
Phần kết luận
Bây giờ bạn có 5 phương pháp để xuất bảng MySQL sang CSV trong kho vũ khí của mình. Nếu bạn cảm thấy thoải mái với việc viết truy vấn bằng dòng lệnh hoặc công cụ tiện ích mysqldump thì đây sẽ là cách đơn giản nhất. Tuy nhiên, nếu bạn không tự tin với kỹ năng truy vấn của mình, MySQL Workbench và phpMyAdmin sẽ là lựa chọn tốt nhất cho bạn. Trích xuất dữ liệu phức tạp từ một tập hợp nguồn dữ liệu đa dạng như MySQL có thể là một nhiệm vụ đầy thách thức và đây là lúc Hevo tiết kiệm thời gian
Hevo cung cấp một cách nhanh hơn để di chuyển dữ liệu từ hơn 100 nguồn dữ liệu chẳng hạn như ứng dụng SaaS hoặc Cơ sở dữ liệu như MySQL vào Kho dữ liệu của bạn để hiển thị trong công cụ BI. Hevo hoàn toàn tự động và do đó không yêu cầu bạn phải viết mã
Bạn muốn thử Hevo? . Bạn cũng có thể xem mức giá cạnh tranh nhất sẽ giúp bạn chọn gói phù hợp với nhu cầu kinh doanh của mình
Bạn đã sử dụng bất kỳ phương pháp nào trong số này chưa?