Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Составление SQL-запросов > Удаление с помощю LEFT JOIN |
Автор: galkinsasha 27.6.2010, 10:30 | ||||
Доброго времени суток... Не проходит запрос
Пишет ошибку: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LEFT JOIN `subkategory` ON subkategory.id_kat=kategory.id_kat WHERE kategory.id' at line 1 но при этом запросна выборку проходит.
HELP ME ![]() ![]() |
Автор: Akina 27.6.2010, 20:52 |
Правильно. СУБД не понимает, откуда и что надо удалять. |
Автор: Gluttton 27.6.2010, 23:14 | ||
galkinsasha, а так:
будет работать? |
Автор: galkinsasha 28.6.2010, 19:56 | ||||
2 Gluttton И что Ваш запрос сделает? я не понимаю... 2 Akina Дак вроде правильно запрос составлен: удалить все записи в двух таблицах связаных за ід_кат где ід_кат=45 Как правильно составить запрос? Если мой запрос не понимает то как же СУБД понимает такой запрос
Добавлено через 9 минут и 40 секунд Всем спасибо за помощь Сделал так, прошел запрос ![]() ![]()
|
Автор: Akina 28.6.2010, 21:01 |
![]() То есть тебе всё равно, что удалять, лишь бы удалилось? логика исходного и конечного запроса неэквивалентны... Не использовать JOIN, заменяя его на условия отбора WHERE. |
Автор: galkinsasha 28.6.2010, 23:09 |
Мне нужно удалить все данные из двух таблиц связаные id_kat где id_kat=45 |
Автор: Gluttton 28.6.2010, 23:18 |
А каскадное удаление не проще будет в реализации? |
Автор: galkinsasha 28.6.2010, 23:45 |
Не знаю. Я работаю в phpmyadmin чето я не видел там таких настроек. В IB Experte(firebird) видел, а сдесь по суте и связей как таковых нету)) Или мы о разных вещах говорим? |
Автор: Gluttton 28.6.2010, 23:55 |
Затрудняюсь ответить, не приходилось сталкиваться с phpmyadmin. Но уверен, что при работе через командную строку будут доступны все параметры ![]() |