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

middle

Cột dẫn xuất là gì? Những vấn đề gì có thể phát sinh từ một cột dẫn xuất trong MySQL?

junior

MySQL Workbench là gì?

junior

Hãy giải thích ràng buộc DEFAULT trong MySQL?

Bình luận

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

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