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

Liệu việc đặt khối TRY/CATCH bên trong giao dịch là đúng/sao cho tốt nhất hay giao dịch nên được đặt bên trong khối TRY?

middle

Các toán tử bitwise là gì và giá trị của chúng từ góc độ thiết kế cơ sở dữ liệu là gì?

junior

Nhắc đến những hạn chế của cột IDENTITY là gì?

Bình luận

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

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