Sto cercando di cancellare i messaggi orfani nel mio database e ho creato questa query:eliminare utilizzando LEFT JOIN con LIMIT in MySQL
DELETE post.*
FROM foro_post AS post
LEFT JOIN foro_thread AS thread USING(threadid)
WHERE thread.threadid IS NULL
Il problema è che io voglio limitare a causa mia tavola ha più di 7.000.000 record.
Poiché non posso utilizzare LIMIT con la query, l'ho provato e ho funzionato, ma non sono sicuro se sia una soluzione efficiente o se possa essere eseguita meglio.
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
Come posso fare questo in modo più efficiente?
Grazie!
Perché non è possibile utilizzare 'LIMIT'? – Kermit
@njk "Si è verificato un errore nella sintassi SQL, controllare il manuale corrispondente alla versione del server MySQL per la sintassi corretta da utilizzare vicino a" LIMIT 1 "alla riga 5" Apparentemente non è possibile utilizzare LIMIT con LEFT JOIN – Santiago