Я знаю, что существует более одного вопроса, который соответствует этому, но я относительно новичок в MySQL, и я не могу сделать эту работу, используя подквесты или ключевое слово USING, плюс я нахожу MySQL наline docs полная загадка.
Я начал пытаться построить свой запрос DELETE, используя запрос SELECT в качестве своей базы, и смог получить все строки, которые я хотел удалить:
select *
from writings_tags_link
join writing_tags on writing_tags.id = writings_tags_link.tag_id
where writing_tags.tag = 'tag one'
а затем просто замените select all с помощью DELETE так:
delete
from writings_tags_link
join writing_tags on writing_tags.id = writings_tags_link.tag_id
where writing_tags.tag = 'tag one'
Я получаю как из сообщения об ошибке, так и из других аналогичных постов, что вы не можете использовать «ON» для объединения таблиц в запросе на удаление, у вас естьиспользовать USING или подзапрос.Запрос, который я построил с помощью USING, возвращает действительно странную ошибку, сначала запрос:
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'
error:
#1109 - Unknown table 'writings_tags_link' in MULTI DELETE
Эта таблица существует, очевидно, мой исходный запрос на выборку вернул искомыйРезультаты.Буду очень признателен за любую помощь / объяснение!
Пожалуйста, имейте в виду, я только пытаюсь удалить данные из таблицы ссылок.