Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / причуды delete / 3 сообщений из 3, страница 1 из 1
10.01.2017, 11:51
    #39381331
Andrew B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
причуды delete
delete from students
WHERE
3 < (
select count(*) from studies c
where
c.group_id = group_id
AND
not EXISTS
(
select * from marks m
where
m.student_id = id and m.subject_id = c.subject_id
and m.mark > 4
)
)
;


вот этот делит должен удалять всех студентов, у кого больше 3 долгов, а на деле удаляет всех, у кого больше 0 долгов.

если же заменить делит на селект, то все работает, как надо - выводятся все студенты, у которых 3+ долгов.

если в делите удалить, например, всех студентов без долгов (через not exists вместо сравнения с каунтом) - тоже все нормально

вопрос - в чем дело?
...
Рейтинг: 0 / 0
10.01.2017, 14:48
    #39381535
Andrew B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
причуды delete
Andrew B.,

удалите тему, вопрос для sqllite. Конфликт имен.
...
Рейтинг: 0 / 0
10.01.2017, 20:37
    #39381848
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
причуды delete
Andrew B.удалите тему, вопрос для sqlliteТак удалить или перенести в SQLite ?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / причуды delete / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]