Задать вопрос

Как получить всех пользователей, которые не имеют ни одной отрицательной транзакции в связанной таблице?

Есть таблица пользователей

id, name

Есть таблица транзакций

id, user_id, sum

Нужно получить всех пользователей, которые не имеют ни одной отрицательной транзакции (т.е. у которых нет ни одной записи с sum < 0.

Получить всех у кого есть > 0 понятно, но как из этой выборки исключить тех, у кого есть помимо больше 0 еще и меньше нуля?
  • Вопрос задан
  • 77 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
bitniks
@bitniks
Go/PHP/Symfony developer
SELECT *
FROM users u
WHERE NOT EXISTS (
    SELECT * 
    FROM transactions t 
    WHERE u.id = t.user_id AND sum < 0
    LIMIT 1
);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы