Как найти самый дорогой товар в sql

Создание игр на Unreal Engine 5
Данный курс научит Вас созданию игр на Unreal Engine 5. Курс состоит из 12 модулей, в которых Вы с нуля освоите этот движок и сможете создавать самые разные игры.
В курсе Вы получите всю необходимую теоретическую часть, а также увидите массу практических примеров. Дополнительно, почти к каждому уроку идут упражнения для закрепления материала.
Помимо самого курса Вас ждёт ещё 8 бесплатных ценных Бонусов: «Chaos Destruction», «Разработка 2D-игры», «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства», «Создание прототипа RPG с открытым миром» и и весь курс «Создание игр на Unreal Engine 4» (актуальный и в 5-й версии), включающий в себя ещё десятки часов видеоуроков.
Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.
Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.
Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.
Запрос: выбрать самый дорогой товар, купленный одним покупателем
уважаемые разработчики! Прошу помочь с запросом: Есть таблицы покупатели Customer,Заказы Orders, Товары Items. Схема данных ниже. Требуется найти самый дорогой товар, купленный одним покупателем. То есть если покупателей, который купили этот товар несколько, то этот товар не выводится, если даже он самый дорогой. Мой код не работает,но не могу понять в чем проблема:

Давайте разбирать по шагам
Товары у которых у которых только один покупатель.
Найдем заказы у которых товары только с одним покупателем.
Добавим собственно товары и покупателей.
Поскольку мы получили в итоге что у разыскиваемого товара может быть только один покупатель. Нам нужно отсортировать по цене по убыванию и взять только самую первую запись из результирующего набора. Никаких max и прочих вам не нужно.
unixforum.org
ограничение: одним запросом, но допустимы подзапросы, джойны и пр.
Никак не справлюсь .
Re: задача на сообразительность SQL
Re: задача на сообразительность SQL
Re: задача на сообразительность SQL
Re: задача на сообразительность SQL
у меня решение такое:
правда меня беспокоит скорость на больших выборках .
geshido, псб,
симпотично , мне нравица поболе моего, токо это прокатит в mysql-карнации SQL, а мой вариант будет работать и в 1С8
Какой запрос возвращает сумму продаж самого дорогого товара?

SELECT Product.Name AS Наименование, Sales.Sum AS Сумма
FROM Product, Sales
WHERE Product.ProdID = Sales.ProdID AND YEAR(DATE) = 2019 AND MONTH(DATE) = 07
ORDER BY Product.Price DESC LIMIT 3
GROUP BY Product.Price AND Product.ID
Вот так ближе к истине?

Илья, не особо. Вы походу вовсе SQL не знаете? Надо подучить.
Зачем 3, когда по условию 1?
Где агрегатор в селекте?
Я ж перечислил в ответе по чем надо группировать, внимательнее!
Зачем там AND в группировке?

#Уже забыл всё на свете, давно не работал с sql 🙁
#Вижу что тут явная операция соединения должна быть т.е JOIN
#ORDER BY, GROUP BY вообще плохо понял в какой последовательности идут и по каким табличным атрибутам должны выполнять свои функции. P.S. ваш комментарий прочитал заново, но всеравно не понял)

Потому что надо читать документацию. У вас что интернет отключили? https://sql-academy.org/ru/guide/syntax-sql-select
Группировка просто группирует то, что выберет селект по указанным столбцам. Остальное, что вы выбираете нужно агрегировать, иначе будет ошибка. Представьте, что group by нет и агрегаторов нет, результат будет сгруппирован по указанным столбцам. В каждой группе от одного до любого числа строк. Мы не можем выбрать больше одной строки на группу и если в этих строках есть неагрегированные столбцы, то не понятно какую из строк группы выбрать.
Это значит, что в селекте могут быть только те столбцы, что указаны в группировке, плюс агрегаторы, которые накладываются на все элементы группы.
А вообще я вам тут не нанимался азы рассказывать. Забыли — идите учить основы SQL