2011-01-20 8 views
5

So che c'è più di una domanda là fuori che corrisponde a questo, ma sono relativamente nuovo a mysql, e non riesco a farlo funzionare usando le missioni secondarie o la parola chiave USING, inoltre trovo il mysql on line doc un mistero completo.Impossibile accedere a mysql delete query to work

ho iniziato cercando di costruire la mia query DELETE utilizzando una query SELECT come la mia base ed è stato in grado di ottenere tutte le righe che ho voluto eliminare:

select * 
from writings_tags_link 
join writing_tags on writing_tags.id = writings_tags_link.tag_id 
where writing_tags.tag = 'tag one' 

e poi appena sostituito selezionare tutte con CANCELLA così:

delete 
from writings_tags_link 
join writing_tags on writing_tags.id = writings_tags_link.tag_id 
where writing_tags.tag = 'tag one' 

deduco sia dal messaggio di errore e da altri posti simili che non possono essere utilizzate 'ON' per unire le tabelle in una query di eliminazione, è necessario utilizzare di utilizzare o una query sub. La query ho costruito con l'utilizzo restituisce un errore di davvero strano, prima la query:

DELETE 
FROM writings_tags_link 
USING writing_tags_link INNER JOIN writing_tags 
WHERE writing_tags.id = writings_tags_link.tag_id 
AND writing_tags.tag ='tag one' 

errore:

#1109 - Unknown table 'writings_tags_link' in MULTI DELETE 

Questa tabella esiste, ovviamente, la mia query di selezione originale ha restituito i risultati desiderati. Qualsiasi aiuto/spiegazione sarebbe molto apprezzato!

Si prega di tenere presente, sto solo cercando di cancellare i dati nella tabella di collegamento.

risposta

8

tuo informazioni sono errate su che richiedono l'uso della parola chiave USING nella sintassi DELETE quando si utilizza JOIN - il documentation provides examples in the multi-delete section:

DELETE wtl 
    FROM WRITINGS_TAGS_LINK wtl 
    JOIN WRITING_TAGS wt ON wt.id = wtl.tag_id 
WHERE wt.tag = 'tag one' 
+1

oh vedo, non ho aggiunto cosa cancellare! Come ho detto, sto imparando :) Grazie, OMG Pony! – JoeM05

+0

questo mi ha aiutato anche nella mia noia :) –