Написать SQL запрос с использованием подзапросов

Рейтинг: -1Ответов: 1Опубликовано: 08.03.2023

есть запрос

  1. Список названий поставщиков, которые в 2016 году поставили товаров на сумму больше, чем поставщик «IDT».

при попытке вывести всех кроме IDT выдает ошибку. что не так в коде кто может помочь

SELECT 
suppliers.supplier, A.action_sum
FROM suppliers 
INNER JOIN (SELECT supplier_id AS id, MAX(price * qty) AS action_sum 
FROM actions NOT IN ( SELECT supplier FROM suppliers WHERE supplier = 'IDT' and Year(action_date) = 2016;

Ответы

▲ -1Принят

Не совсем удобно без описания таблиц, но напрашивается (в учебных целях, как я понимаю), запрос с HAVING:

select supplier_id, supplier, sum(price*qty) summ 
from actions 
inner join suppliers on suppliers.id=supplier_id 
    where Year(action_date) = 2016 
group by supplier_id 
having summ > (
    select sum(price*qty) 
    from actions 
        where Year(action_date) = 2016 
            and supplier_id = (
                select id 
                from suppliers 
                    where supplier='IDT'
            )
);

Но не в учебных целях - такое себе