powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SQL сложная задача с датами из разных полей
4 сообщений из 4, страница 1 из 1
SQL сложная задача с датами из разных полей
    #40002971
igorbelwork
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
!Посчитайте количество продуктов, которые набрали хотя бы 1 контакт за 2 недели активности после создания, и их долю от созданных в этот день для продуктов созданных после 1 августа. Показатель должен быть с динамикой по дням.

На данный момент я склоняюсь к такому запросу:

select count (product_id)

from products

join events on products.product_id = events.product_id

where date_created between '2020-08-01' and '2002-08-14' and datediff (day, date_created, min(event_timestamp)) > 14

но у меня вызывает сомнения правильность вычисления datediff

таб 1 @поле тип key описание

event_id string Primary key уникальный идентификатор события

event_timestamp timestamp дата события

product_id string уникальный идентификатор продукта

sender_id string уникальный идентификатор пользователя-отправителя события. В случае события блокировки идентификатор модератора.

block integer событие блокировки продукта. Может быть 1-блокировка, 2-разблокировка или NULL

chat integer событие создания чата. Может быть 1 или NULL



таб 2 @поле тип key описание

product_id string Primary key уникальный идентификатор продукта

owner_id string уникальный идентификатор пользователя-продавца продукта

date_created timestamp дата создания продукта

is_sold integer статус продажи продукта. Может быть 1 или NULL

date_sold
timestamp дата продажи продукта

is_archived integer статус архивации продукта. Может быть 1 или NULL

date_archived timestamp дата архивации продукта

is_deleted integer статус удаления продукта. Может быть 1 или NULL

date_deleted timestamp дата удаления продукта

is_blocked integer статус блокировки продукта. Может быть 1 или NULL

date_blocked timestamp дата блокировки продукта

subcategory_id
string Подкатегория продукта
...
Рейтинг: 0 / 0
SQL сложная задача с датами из разных полей
    #40002974
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для началаавторкоторые набрали хотя бы 1 контактHaving Count()>0 + group by
лучше оформить в https://dbfiddle.uk/?rdbms=mysql_8.0 (выбрать версию) с заполнением данных, ответ будет быстрее
да и постановка задачи какая то вымученная
".. от созданных в этот день.." какой день..
...
Рейтинг: 0 / 0
SQL сложная задача с датами из разных полей
    #40003140
igorbelwork
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо и на том)
...
Рейтинг: 0 / 0
SQL сложная задача с датами из разных полей
    #40003192
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igorbelwork
но у меня вызывает сомнения правильность вычисления datediff
Сомнения должно вызывать смешение скалярного значения и агрегатной функции в одном выражении без GROUP BY в запросе. И вообще использование агрегатной функции во WHERE.

Alex_Ustinov
лучше оформить в https://dbfiddle.uk/?rdbms=mysql_8.0 (выбрать версию) с заполнением данных
+100500
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SQL сложная задача с датами из разных полей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]