Câu hỏi phỏng vấn T-SQL
Câu hỏi

Làm thế nào bạn có thể xóa các bản ghi trùng lặp trong một bảng không có khóa chính?

Câu trả lời

Để xóa các bản ghi trùng lặp trong một bảng không có khóa chính trong SQL Server, bạn có thể sử dụng một số phương pháp khác nhau. Dưới đây là một số cách tiếp cận:

  1. Sử dụng ROWCOUNT: Bạn có thể thiết lập ROWCOUNT để giới hạn số lượng bản ghi bị ảnh hưởng bởi một lệnh. Đặt ROWCOUNT bằng 1 sẽ cho phép bạn xóa chỉ một trong số các bản ghi trùng lặp.

  2. Sử dụng Common Table Expressions (CTE) và ROW_NUMBER(): Bạn có thể tạo một CTE với ROW_NUMBER() để gán một số thứ tự cho mỗi bản ghi dựa trên các trường bạn muốn xác định sự trùng lặp. Sau đó, bạn có thể xóa các bản ghi có số thứ tự lớn hơn 1.

  3. Sử dụng %%lockres%%: Phương pháp này sử dụng %%lockres%% để xác định duy nhất các bản ghi và sau đó xóa các bản ghi trùng lặp dựa trên điều kiện này.

  4. **Sử dụn...

middle

middle

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

expert

Chèn kết quả của một thủ tục lưu trữ vào một bảng tạm thời

middle

Cursor là gì và nó hoạt động như thế nào?

junior

TSQL Window functions là gì?

Bình luận

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

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