![]() |
|
Работа с Итогом (КОЛИЧЕСТВО РАЗЛИЧНЫХ) в СКД | ☑ | ||
---|---|---|---|---|
0
Adept
30.03.20
✎
17:33
|
Есть таблица , в строках дата первого привлечения клиента, в столбцах номер дня когда клиент пользовался услугами (0,1,2,3,5 и т.д.)
Если взять за весть период количество различных ид клиентов, мы получим к примеру 100 штук Если взять по дням, получим в 0-ой день 95 в 1-й день 30 во 2-й день 15 и так далее Итого в СКД будет не 100 а 95. Как то это можно побороть? |
|||
1
Adept
30.03.20
✎
17:36
|
+ пробовал получить полный итог в 100 используя функции СКД ВычислитьВыражение("Количество(Различные Пользователь)","ДеньПродажи" ,,"Первая", "Последняя")
тот же результат 95 |
|||
2
toypaul
гуру
30.03.20
✎
17:42
|
я ничо не понял потому что https://wiki.programstore.ru/kak-pravilno-zadavat-vopros-svyazannyj-s-podsistemoj-skd-v-1s/
|
|||
3
Adept
30.03.20
✎
17:57
|
В таком варианте получаем 5 уникальных пользователей
ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Подзапрос.ИДПокупателя) КАК ИДПокупателя ИЗ (ВЫБРАТЬ "ДатаПривлечения1" КАК ДатаПривлечения, 0 КАК ДеньПривлечения, "ИДПокупателя1" КАК ИДПокупателя, 100 КАК СуммаДохода ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя4", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя1", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя5", 100) КАК Подзапрос |
|||
4
Adept
30.03.20
✎
17:59
|
ВЫБРАТЬ
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Подзапрос.ИДПокупателя) КАК ИДПокупателя ИЗ (ВЫБРАТЬ "ДатаПривлечения1" КАК ДатаПривлечения, 0 КАК ДеньПривлечения, "ИДПокупателя1" КАК ИДПокупателя, 100 КАК СуммаДохода ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя4", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя1", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя5", 100) КАК Подзапрос |
|||
5
Adept
30.03.20
✎
18:00
|
А если добавить день превличения , будет два дня по 4, и соответственно в итоге будет 4
ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Подзапрос.ИДПокупателя) КАК ИДПокупателя, Подзапрос.ДеньПривлечения КАК ДеньПривлечения ИЗ (ВЫБРАТЬ "ДатаПривлечения1" КАК ДатаПривлечения, 0 КАК ДеньПривлечения, "ИДПокупателя1" КАК ИДПокупателя, 100 КАК СуммаДохода ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 0, "ИДПокупателя4", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя1", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя2", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя3", 100 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "ДатаПривлечения1", 1, "ИДПокупателя5", 100) КАК Подзапрос СГРУППИРОВАТЬ ПО Подзапрос.ДеньПривлечения |
|||
6
Adept
30.03.20
✎
18:01
|
(4) без разбивки по дням привлечения
(5) с разбивкой |
|||
7
Adept
30.03.20
✎
18:02
|
+ (2) можно просто скопировать в консоль и выполнить
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |