Добрый день, я студент колледжа, и в последнее время у нас было задание, в котором нам было поручено писать команды SQL по различным вопросам в зависимости от информации, которая должна отображаться из 3 разных таблиц. Вот инструкции и пример вопроса с предоставленным решением:
Инструкции + Пример вопроса и решения
Таблица данных
И ниже мои ответы:
Мои решенные вопросы, часть 1
Мои решенные вопросы, часть 2
Я хотел бы знать, есть ли еще способы сократить каждый из моих ответов на 7 вопросов, предпочтительно самый короткий код. Как любопытный человек, эффективность важна для меня, и идеально использовать гораздо более короткие команды. Например, я совершенно определенно уверен, что этот код из # 7 может быть сокращен:
SELECT pNo, MAX(qty), (SELECT MAX(qty) FROM sp WHERE pNo IN (SELECT pNo
FROM p WHERE pName = 'Nut' OR pName = 'Cam') ) AS MAXcamORnut
FROM sp
GROUP BY pno
HAVING MAX(qty) > ALL (SELECT qty FROM sp WHERE pNo IN(SELECT pNo FROM
p
WHERE pName = 'Nut' OR pName = 'Cam'));
Кроме этого, у меня также есть два оставшихся нерешенных вопроса, которые я не имею ни малейшего понятия, как их решить, любые начальные идеи будут оценены. Заранее спасибо, ребята :) 1024 *
Нерешенные вопросы