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

SQL задача. Основы работы с базами данных и SQL. Группировка данных по категориям.

Mikhail Знаток (263), на голосовании 1 год назад
Отобразите, сколько раз в среднем поливали горчицей каждый вид хот-дога, в котором пять ингредиентов. Добавьте условие: отберите записи за вторую неделю года. Если в хот-дог добавили горчицу, поле mustard содержит значение 1.
Голосование за лучший ответ
CausonQ Мудрец (13341) 1 год назад
 SELECT
AVG(hotdog)
FROM hotdogs
WHERE mustard = 1
AND week = 2
MikhailЗнаток (263) 1 год назад
что-то типа такого должно быть, еще куда-то AVG нужно воткнуть. Тема Group By
SELECT COUNT(mustard),
EXTRACT (WEEK FROM date '2022-01-14')
FROM hotdog
WHERE mustard = 1
AND ingredients = 5
GROUP BY name_hotdog;
CausonQ Мудрец (13341) Mikhail, мне не известна структура таблицы. Я набросал запрос просто по тексту. AVG только в select. Для чего тебе считать количество горчицы? EXTRACT нужно в where перенести. GROUP BY - нужно по какому-то признаку группировать: день? название? горчица? В условии это не указано
MikhailЗнаток (263) 1 год назад
такая структура таблицы я.практикума с подсказкой. Лучше б ответы указывали, а то курс бесплатный и если встрянешь, то хоть бросай!)
Mikhail, привет, скажите у вас получилось решить эту задачу? я на несколько недель завис с этой задачей((, хоть бросай это всё....
niksarovУченик (173) 1 год назад
SELECT name_hotdog,
AVG(mustard)
FROM hotdog
WHERE ingredients = 5 AND EXTRACT (WEEK FROM date) = 2
GROUP BY name_hotdog;
CausonQ Мудрец (13341) noki noki, точно, среднее - это сумма всех, деленное на количество, а если взять только горчицу равную 1, то среднее всегда будет равно единице
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (263840) 1 год назад
каждый вид хот-дога, в котором пять ингредиентов
Это как понимать?
niksarov Ученик (173) 1 год назад
SELECT name_hotdog,
AVG(mustard)
FROM hotdog
WHERE ingredients = 5 AND EXTRACT (WEEK FROM date) = 2
GROUP BY name_hotdog;
MikhailЗнаток (263) 1 год назад
Спасибо, понял в чем ошибка)
Екатерина Волкова Ученик (116) 1 год назад
привет ! не знаю почему , не нужно обращать внимание на "mustard = 1"
правильный код такой :
SELECT name_hotdog,
AVG(mustard) AS mustard_avg
FROM hotdog
WHERE ingredients = 5
AND EXTRACT(week FROM date) = 2
GROUP BY name_hotdog
Denis Ber ВарнавскихУченик (101) 1 месяц назад
Потому что мы делаем выборку среди всех хотдогов каждого вида, а если указываем mustard = 1 , то поиск среди всех хотдогов каждого вида С ГОРЧИЦЕЙ, а тут априори будет значение 1 (то есть 100%)
Екатерина Фадеева Ученик (121) 11 месяцев назад
SELECT name_hotdog,
AVG(mustard)
FROM hotdog
WHERE EXTRACT (WEEK FROM date) = 2
AND ingredients = 5
GROUP BY name_hotdog;
Никита Кузьминов Ученик (105) 3 недели назад
Фишка в том, что Яндекс запутывает последним предложением в задании "Если в хот-дог добавили горчицу, поле mustard содержит значение 1."

Если добавлять условие WHERE mustard = 1
тренажёр это не пропускал. Правильный запрос такой
SELECT name_hotdog,
AVG(mustard)
FROM hotdog
WHERE ingredients = 5
AND EXTRACT('WEEK' FROM date) = 2
GROUP BY name_hotdog;
Похожие вопросы