Tôi đang cố gắng để xóa bài viết đứa trẻ mồ côi tại cơ sở dữ liệu của tôi và tôi đã tạo ra truy vấn này:DELETE sử dụng LEFT JOIN với LIMIT trong MySQL
DELETE post.*
FROM foro_post AS post
LEFT JOIN foro_thread AS thread USING(threadid)
WHERE thread.threadid IS NULL
Vấn đề là tôi muốn giới hạn vì bàn của tôi có hơn 7.000.000 Hồ sơ.
Vì tôi không thể sử dụng LIMIT với truy vấn, tôi đã thử điều này và thực sự đã làm việc, nhưng tôi không chắc đó có phải là giải pháp hiệu quả hay không.
DELETE post.*
FROM foro_post AS post
LEFT JOIN foro_thread AS thread USING(threadid)
WHERE thread.threadid IS NULL
AND post.postid < 500
// Where < 500 should be increasing as I delete records
Làm cách nào để làm điều này hiệu quả hơn?
Cảm ơn!
Tại sao bạn không thể sử dụng 'LIMIT'? – Kermit
@njk "Bạn có lỗi trong cú pháp SQL của bạn; hãy kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn để biết cú pháp đúng để sử dụng gần 'LIMIT 1' ở dòng 5" Rõ ràng không thể sử dụng LIMIT với LEFT JOIN – Santiago