Câu hỏi phỏng vấn MySQL
Câu hỏi

Có những cách nào để loại bỏ các hàn...

Câu trả lời

Để loại bỏ các hàng trùng lặp từ một bảng trong MySQL, bạn có thể sử dụng một số phương pháp khác nhau tùy thuộc vào tình huống cụ thể và yêu cầu của bạn. Dưới đây là một số cách phổ biến để xử lý vấn đề này:

1. Sử dụng ALTER TABLE để thêm khóa duy nhất

Nếu bạn biết cột hoặc nhóm cột nào định danh duy nhất cho mỗi hàng, bạn có thể thêm một ràng buộc khóa duy nhất, và MySQL sẽ tự động loại bỏ các hàng trùng lặp khi bạn thực hiện thao tác này:

sql Copy
ALTER IGNORE TABLE table_name ADD UNIQUE INDEX idx_name (column1, column2, ...);

Lưu ý: Từ phiên bản MySQL 5.7.4 trở đi, IGNORE không còn được hỗ trợ. Bạn cần phải xử lý các hàng trùng lặp trước hoặc sau khi thêm chỉ mục duy nhất.

2. Tạo bảng tạm thời

Bạn có thể tạo một bảng tạm thời để lưu trữ dữ liệu duy nhất, sau đó xóa bảng gốc và đổi tên bảng tạm thời:

sql Copy
CREATE TABLE temp_table AS
SELECT DISTINCT * FROM original_table;

DROP TABLE original_table;

RENAME TABLE temp_table TO original_table;

3. Sử dụng câu lệnh DELETE với JOIN

Bạn có thể sử dụng một câu lệnh DELETE kết hợp với một JOIN để loại bỏ các hàng trùng lặp:

sq... Copy
senior

senior

Gợi ý câu hỏi phỏng vấn

senior

Lợi ích của FULLTEXT so với LIKE khi thực hiện tìm kiếm văn bản trong MySQL là gì?

senior

Những điểm khác biệt chính giữa cơ sở dữ liệu MySQLOracle là gì?"

middle

Hãy giải thích sự khác nhau giữa TIMESTAMPDATETIME và khi nào nên sử dụng chúng?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào