SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » PostgreSQL » Расчет WAU по номеру недели
Расчет WAU по номеру недели [сообщение #3265] Fri, 06 October 2023 12:14 Переход к следующему сообщению
angelinasokolenko1999@gma в настоящее время не в онлайне  angelinasokolenko1999@gma
Сообщений: 7
Зарегистрирован: October 2023
Junior Member
Добрый день. Задание звучит следующим образом:

Рассчитайте WAU: количество уникальных покупателей по неделям.
Отобразите в таблице номер недели и WAU. Отсортируйте таблицу по номеру недели в порядке возрастания.

Мой запрос:
SELECT EXTRACT (week FROM date) AS Week,
COUNT(DISTINCT (bracelet_id) )AS WAU
FROM pizza
GROUP BY date, EXTRACT (week FROM date)
ORDER BY DATE

Является не до конца верным, поскольку возвращает такой результат: (во вложении)
Подскажите, пожалуйста, как сгруппировать данные по каждой из недель таким образом, чтобы WAU считалось за каждую неделю. А именно, условно 1 неделя 20, 2 неделя-30. Сейчас несколько первых недель, несколько вторых и тд
  • Вложение: Снимок.PNG
    (Размер: 7.90KB, Загружено 755 раз)
Re: Расчет WAU по номеру недели [сообщение #3266 является ответом на сообщение #3265] Fri, 06 October 2023 12:18 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
зачем ты группируешь по дате?
Re: Расчет WAU по номеру недели [сообщение #3292 является ответом на сообщение #3265] Sun, 08 October 2023 21:24 Переход к предыдущему сообщениюПереход к следующему сообщению
angelinasokolenko1999@gma в настоящее время не в онлайне  angelinasokolenko1999@gma
Сообщений: 7
Зарегистрирован: October 2023
Junior Member
column "pizza.date" must appear in the GROUP BY clause or be used in an aggregate function

Спасибо за комментарий. Может быть, вы знаете как исправить, в таком случае?)
Re: Расчет WAU по номеру недели [сообщение #3298 является ответом на сообщение #3292] Mon, 09 October 2023 13:19 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
angelinasokolenko1999@gma писал(а) Sun, 08 October 2023 21:24
column "pizza.date" must appear in the GROUP BY clause or be used in an aggregate function

Спасибо за комментарий. Может быть, вы знаете как исправить, в таком случае?)
да.
Re: Расчет WAU по номеру недели [сообщение #3304 является ответом на сообщение #3298] Mon, 09 October 2023 14:35 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 360
Зарегистрирован: June 2022
Senior Member
Ну и что можно без структуры таблиц и примера данных посоветовать?
Re: Расчет WAU по номеру недели [сообщение #3313 является ответом на сообщение #3298] Tue, 10 October 2023 10:30 Переход к предыдущему сообщениюПереход к следующему сообщению
angelinasokolenko1999@gma в настоящее время не в онлайне  angelinasokolenko1999@gma
Сообщений: 7
Зарегистрирован: October 2023
Junior Member
Поделитесь?Smile
Re: Расчет WAU по номеру недели [сообщение #3314 является ответом на сообщение #3304] Tue, 10 October 2023 10:31 Переход к предыдущему сообщениюПереход к следующему сообщению
angelinasokolenko1999@gma в настоящее время не в онлайне  angelinasokolenko1999@gma
Сообщений: 7
Зарегистрирован: October 2023
Junior Member
Таблица pizza содержит данные о заказах пиццы в «Роботлэнде».
order_id — идентификатор заказа. Поле является первичным ключом, и значения в нём уникальны.
date — дата заказа. Данные в поле хранятся в формате YYYY-MM-DD.
name — название пиццы в заказе.
price — стоимость одной пиццы в баллах браслета.
vegan_marker — указатель, является ли пицца вегетарианской:
1 — пицца вегетарианская;
0 — пицца не вегетарианская.
radius — радиус пиццы. Не является фиксированным значением: клиент может выбрать любой размер.
quantity — количество пицц в заказе.
cheese_side — наличие сырного бортика:
1 — бортик есть;
0 — бортика нет.
bracelet_id — идентификатор браслета клиента, который купил пиццу.
Re: Расчет WAU по номеру недели [сообщение #3315 является ответом на сообщение #3313] Tue, 10 October 2023 11:32 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
angelinasokolenko1999@gma писал(а) Tue, 10 October 2023 10:30
Поделитесь?Smile
убери из запроса
GROUP BY DATE
ORDER BY DATE
оставь только
GROUP BY EXTRACT (week FROM date)
Re: Расчет WAU по номеру недели [сообщение #3316 является ответом на сообщение #3315] Tue, 10 October 2023 11:34 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 360
Зарегистрирован: June 2022
Senior Member
Select datepart(week, date) as wn, count(bracelet_id) as cnt
from pizza
Where date >= '2023-01-01'
Group By datepart(week, date)
Order by wn
Re: Расчет WAU по номеру недели [сообщение #3345 является ответом на сообщение #3315] Wed, 11 October 2023 15:44 Переход к предыдущему сообщению
angelinasokolenko1999@gma в настоящее время не в онлайне  angelinasokolenko1999@gma
Сообщений: 7
Зарегистрирован: October 2023
Junior Member
Спасибо!
Предыдущая тема: Помогите с запросом SQL
Следующая тема: Расчет MAU
Переход к форуму:
  


Текущее время: Thu Nov 21 14:35:58 GMT+3 2024

Общее время, затраченное на создание страницы: 0.01358 секунд