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

SQL запросы. Yandex Практикум.

Babek Novruzov Ученик (134), на голосовании 7 месяцев назад
Отсортируйте таблицу hotdog по полю bracelet_id по возрастанию. Оставьте в таблице только первые пять строк.

Вот код:
SELECT DISTINCT bracelet_id
FROM hotdog
GROUP BY bracelet_id -- впишите условие для сортировки
LIMIT 5;

Выдает нужную инфу в таблице, а курс не принимает ответ.

Что я не так понимаю?
Голосование за лучший ответ
Ботан Икин Профи (680) 8 месяцев назад
На Yandex Практикум ты записался по доброй воле, никто тебя не принуждал. Еще и деньги заплатил. Какой смысл жить за счет чужих подсказок?
Татьяна Просветленный (36377) 8 месяцев назад
Проблема в вашем SQL запросе заключается в том, что вы используете неправильное условие для сортировки. Вместо GROUP BY, которое используется для группировки данных, вам нужно использовать ORDER BY для сортировки по полю bracelet_id.
Исправленный SQL запрос должен выглядеть следующим образом:
 SELECT *  
FROM hotdog
ORDER BY bracelet_id ASC
LIMIT 5;
Babek NovruzovУченик (134) 8 месяцев назад
Спасибо.
Евгений Текутов Ученик (149) 4 месяца назад
Отсортируйте таблицу hotdog по полю bracelet_id по возрастанию. Оставьте в таблице только первые пять строк.
ЕСЛИ ТАК:SELECT bracelet_id
FROM hotdog
GROUP BY bracelet_id
ORDER BY bracelet_id
LIMIT 5

То выдает одно поле bracelet_id с сортировкой 145734 145735 145736 145737 145738

А ЕСЛИ ТАК

SELECT *
FROM hotdog
ORDER BY bracelet_id
LIMIT 5

То выдает все поля ка нужно, но в поле bracelet_id 145734 во всех строках, при этом, такой ответ принимается и считается правильным


Я вот не пойму, почему в финальной таблице, поле bracelet_id у всех наименований хотдогов одинаковое? По какому полю система посчитала от меньшего до большего? Если убрать лимит, то первые 6 bracelet_id идут под номером 145734, те этот клиент делал разные заказы на разные хотдоги в разные месяца, но все они все равно первые по списку.

Пояснит кто?
Анна ОрловаЗнаток (336) 1 месяц назад
Система посчитала по полю *номер браслета* первые пять записей. Мы же по этому полю даем ей задание отсортировать. То есть клиент 145734 делал много заказов,да, но когда его заказы "закончатся", в т аблице увидим следующего клиента с айди 145735 ... и так далее.
Похожие вопросы