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

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

Kundyz Ученик (109), на голосовании 9 месяцев назад
Подсчитайте максимальный и минимальный радиус пиццы для каждого дня марта. Отобразите в таблице дату, максимальное и минимальное значения. Отсортируйте числа по убыванию.
SELECT EXTRACT (month from date)=3, MAX (radius),
MIN (radius)
FROM pizza
GROUP BY date;
выдает, что слишком много строк.
Голосование за лучший ответ
Оракул Оракул (62084) 10 месяцев назад
Нет ограничения на март
Нет сортировки по дате
Выводите только месяц, а не дату
KundyzУченик (109) 10 месяцев назад
Не получается что-то применить desc, выдает ошибку
Оракул Оракул (62084) Kundyz, ну выдает, так выдает
KundyzУченик (109) 10 месяцев назад
Таблица pizza содержит данные о заказах пиццы в «Роботлэнде».
order_id — идентификатор заказа. Поле является первичным ключом, и значения в нём уникальны.
date — дата заказа. Данные в поле хранятся в формате YYYY-MM-DD.
name — название пиццы в заказе.
price — стоимость одной пиццы в баллах браслета.
vegan_marker — указатель, является ли пицца вегетарианской:
1 — пицца вегетарианская;
0 — пицца не вегетарианская.
radius — радиус пиццы. Не является фиксированным значением: клиент может выбрать любой размер.
quantity — количество пицц в заказе.
cheese_side — наличие сырного бортика:
1 — бортик есть;
0 — бортика нет.
bracelet_id — идентификатор браслета клиента, который купил пиццу.
Оракул Оракул (62084) Kundyz, ошибка с desc в чем? у вас селект в целом правильный, исправьте то, что я в ответе написал
KundyzУченик (109) 10 месяцев назад
SELECT date,
EXTRACT (month from date)=3,
MAX (radius),
MIN (radius)
FROM pizza
ORDER BY date DESC;
выдает ошибку
KundyzУченик (109) 10 месяцев назад
Прости, только учусь! Думала, где используется GROUP BY, одновременно не используется ORDER BY.
Оракул Оракул (62084) Kundyz, нет, все конструкции select могут быть применены в одном запросе Я так понял, все решено date и extact вам не нужны одновременно, нужна только дата date, а месяц нужно в where проверять, по условию
KundyzУченик (109) 10 месяцев назад
Да, ответ нашла:
SELECT date,
MAX(radius) AS max_radius,
MIN(radius) AS min_radius
FROM pizza
WHERE EXTRACT(MONTH FROM date) = 3
GROUP BY date
ORDER BY date DESC;
PuF Профи (585) 10 месяцев назад
SELECT
date,
MAX(radius) AS max_radius,
MIN(radius) AS min_radius
FROM
pizza
WHERE
EXTRACT(MONTH FROM date) = 3
GROUP BY
date
ORDER BY
max_radius DESC;
KundyzУченик (109) 10 месяцев назад
Спасибо большое, но внесла небольшая поправку, правильный код:
SELECT date,
MAX(radius) AS max_radius,
MIN(radius) AS min_radius
FROM pizza
WHERE EXTRACT(MONTH FROM date) = 3
GROUP BY date
ORDER BY date DESC;
Aibek Myngbayev Мынбаев Ученик (103) 10 месяцев назад
SELECT date, MAX(radius) AS max_radius, MIN(radius) AS min_radius
FROM pizza
WHERE EXTRACT(MONTH FROM date) = 3
GROUP BY date
ORDER BY date DESC, max_radius desc

Вот так будет правильно
Андрей Поспелов Ученик (102) 1 месяц назад
Вот правильный ответ:

SELECT MAX(radius) AS max_radius,
MIN(radius) AS min_radius
FROM pizza
WHERE DATE_TRUNC ('day', date) = '2022-03-13'
GROUP BY date
ORDER BY max_radius DESC
Похожие вопросы