|
Выбор позиций, использующихся ежедневно
|
|||
---|---|---|---|
#18+
Здравствуйте. Очень нужна помощь специалистов. В sql я новичок. Сейчас бьюсь над одной задачей, сломала себе уже голову. Ситуация такая - есть некая таблица, содержащая в себе обширный список товаров. Необходимо отслеживать, какие товары продаются ежедневно за определенный период времени (он задается и может быть произвольным). Товар может быть продан 1 раз в день или несколько раз, а может быть не продан совсем. В итоге должна быть таблица с названием только тех товаров, которые в течении всего заданного периода (месяц, неделя, 10 дней, год и т.д.) продавался каждый день хотя бы единожды. Заранее спасибо за помощь. С уважением... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2020, 23:28 |
|
Выбор позиций, использующихся ежедневно
|
|||
---|---|---|---|
#18+
Ну если количество различных дат продаж за период равно количеству дней в этом периоде - то товар продавался ежедённо. Иначе - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2020, 22:33 |
|
Выбор позиций, использующихся ежедневно
|
|||
---|---|---|---|
#18+
Наверное, уточню свой вопрос. Есть таблица с данными: id_tovar Start Date tovar1 09.07.2019 9:55 tovar1 10.07.2019 17:26 tovar2 10.07.2019 17:18 tovar2 10.07.2019 11:30 tovar2 11.07.2019 8:30 tovar3 06.07.2019 8:25 tovar3 10.07.2019 17:17 tovar3 10.07.2019 12:07 tovar3 11.07.2019 8:32 tovar4 06.07.2019 10:14 tovar4 06.07.2019 11:16 tovar4 07.07.2019 8:47 tovar4 07.07.2019 9:15 tovar4 07.07.2019 18:06 tovar4 08.07.2019 10:16 tovar4 09.07.2019 16:17 tovar4 09.07.2019 16:28 tovar4 10.07.2019 9:15 tovar4 10.07.2019 18:34 tovar4 10.07.2019 18:45 tovar4 11.07.2019 9:29 tovar6 08.07.2019 10:07 tovar7 10.07.2019 11:37 tovar7 10.07.2019 17:22 tovar7 11.07.2019 8:35 tovar8 11.07.2019 13:38 tovar10 06.07.2019 19:04 tovar10 06.07.2019 18:59 tovar10 07.07.2019 16:55 tovar10 08.07.2019 19:15 tovar10 08.07.2019 13:27 tovar10 08.07.2019 17:02 tovar10 09.07.2019 8:39 tovar10 09.07.2019 8:51 tovar10 10.07.2019 19:37 tovar10 10.07.2019 19:36 tovar10 11.07.2019 16:30 Для того, чтобы отфильтровать те товары, которые продаются ежедневно за определенный период времени, делаю следующий запрос SELECT distinct id_tovar, convert(varchar(10),StartDate,104) as Дата_Подбора, count(*) as kol FROM tabl where StartDate between convert(datetime, :date1 ,104) and convert(datetime, :date2 ,104) group by tovar, StartDate order by Object, convert(varchar(10),StartDate,104) Период взяла с 06.07.2019 по 11.07.2019 В итоге получается следующая таблица: id_tovar Date kol tovar1 09.07.2019 1 tovar1 10.07.2019 1 tovar2 10.07.2019 1 tovar2 11.07.2019 1 tovar3 06.07.2019 1 tovar3 10.07.2019 1 tovar3 11.07.2019 1 tovar4 06.07.2019 1 tovar4 07.07.2019 1 tovar4 08.07.2019 1 tovar4 09.07.2019 1 tovar4 10.07.2019 1 tovar4 11.07.2019 1 tovar6 08.07.2019 1 tovar7 10.07.2019 1 tovar7 11.07.2019 1 tovar8 11.07.2019 1 tovar10 06.07.2019 1 tovar10 07.07.2019 1 tovar10 08.07.2019 1 tovar10 09.07.2019 1 tovar10 10.07.2019 1 tovar10 11.07.2019 1 А должна: id_tovar kol tovar4 6 tovar10 6 Или хотя бы: id_tovar kol tovar1 2 tovar2 2 tovar3 3 tovar4 6 tovar6 1 tovar7 2 tovar8 1 tovar10 6 Подскажите, плиз, где я что-то не то делаю. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2020, 09:20 |
|
Выбор позиций, использующихся ежедневно
|
|||
---|---|---|---|
#18+
Ксанта где я что-то не то делаю. Вы написали (или нагуглили) запрос, которые совершенно не имеет отношения к поставленной задаче. Решение уже написано выше, достаточно его перевести на SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2020, 14:05 |
|
|
start [/forum/topic.php?fid=47&fpage=18&tid=1828469]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
28ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 116ms |
0 / 0 |