Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача по SQL. Яндекс практикум

Данил Гурин Знаток (413), на голосовании 11 месяцев назад
Отобразите название пиццы, наличие сырного бортика и средний чек. Отсортируйте таблицу сначала по названию в алфавитном порядке, а потом — по наличию сырного бортика по возрастанию.
Как отсортировать в алфавитном порядке?
Голосование за лучший ответ
Maks . Гуру (2629) 1 год назад
На каком языке?
Данил ГуринЗнаток (413) 1 год назад
SELECT name,
cheese_side,
AVG(price*quantity)
FROM pizza
WHERE cheese_side = 0
GROUP BY order_id
ORDER BY cheese_side ASC
Во так типа писать
Maks . Гуру (2629) Данил Гурин, На чистом sql не особо умею, читай документацию или на худой конец гпт спроси
Терр Онтал Мудрец (12779) 1 год назад
Ну круто, мы же все знаем, что это за таблица, какие в ней поля. Особенно понятно, к чему относится средний чек
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (264704) 1 год назад
 SELECT name,  
cheese_side,
AVG(price * quantity) as avg_price_quantity
FROM pizza
WHERE cheese_side = 0
GROUP BY name, cheese_side, order_id
ORDER BY cheese_side ASC;
Данил ГуринЗнаток (413) 1 год назад
выдает: слишком много строк
YralSoftУченик (113) 12 месяцев назад
Не верно. За чем группировать по order_id ? Так же в условии отсутствует cheese_side = 1. В задаче требует чтоб учли наличие сырного бортика.

 SELECT name,     
cheese_side,
AVG(price * quantity) as avg_price_quantity
FROM pizza
WHERE cheese_side = 1 or cheese_side = 0
GROUP BY name, cheese_side
ORDER BY name ASC, cheese_side ASC;
Doner Fox Ученик (114) 1 год назад
ORDER BY с указанием столбца, по которому нужно сортировать.

Предположим, что у вас есть таблица Pizzas со столбцами name (название пиццы), cheese_crust (наличие сырного бортика) и average_price (средний чек). Ниже приведен пример SQL-запроса:

SELECT name, cheese_crust, average_price
FROM Pizzas
ORDER BY name ASC, cheese_crust ASC;
В этом запросе ORDER BY name ASC указывает, что названия пиццы будут отсортированы в алфавитном порядке по возрастанию (ASC означает "по возрастанию"). Если вы хотите сортировать данные в обратном порядке, то можете использовать ключевое слово DESC вместо ASC.

Далее, ORDER BY включает cheese_crust ASC для сортировки столбца cheese_crust по возрастанию. Здесь также может быть использовано DESC, если требуется сортировка в обратном порядке.

Таким образом, вы получите результирующий набор данных, отсортированный сначала по названию пиццы в алфавитном порядке, а затем по наличию сырного бортика по возрастанию.
Екатерина Фадеева Ученик (121) 12 месяцев назад
SELECT
name,
cheese_side,
AVG(price * quantity) as avg_price_quantity
FROM pizza
WHERE cheese_side <=1
GROUP BY name,cheese_side
ORDER BY name,cheese_side ASC;
Жорик Ученик (126) 3 месяца назад
ORDER BY name - отсортировать в алфавитном порядке
Похожие вопросы