|
|
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
День добрый, товарищи! Имеется задачка на ABC-анализ. Есть две таблицы. См. вложение эксель. Первая таблица содержит справочную информацию(категория, продукт, цена) Вторая таблица содержит информацию непосредственно о всех продажах за период. То-есть для моей задачи первая таблица нужна только для того чтобы выдрать оттуда цену, для расчета оборотов(PRICE*SALES_QNTY - цена*кол-во_товаров), и дальнейшего АБЦ-анализа. Мой запрос сейчас выглядит вот так. :Select Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Во втором кейсе как раз должен происходить АБЦ-анализ по обороту в рублях. Он работает некорректно, так как я не могу построить нарастающий итог по столбцу 'Доля прибыли нарастающ'. Первый же кейс, где происходит АБЦ-анализ по обороту в штуках(затронута всего 1 таблица), нарастающий итог работает прекрасно, если раскоментировать "--order by 'Доля товаров' desc". Подскажите плиз, где ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 15:40 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Rust_Cohle, Для того, чтобы посчитать нарастающий итог, надо понимать в каком порядке его наращивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 15:55 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Дело в сортировке, вторая строка=вторая+первая, третья=третья+вторая+первая и т д. Стандартный нарастающий итог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 15:58 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Rust_Cohle Дело в сортировке, вторая строка=вторая+первая, третья=третья+вторая+первая и т д. Стандартный нарастающий итог.У строк нет порядка, пока ты его сам явно не задашь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:00 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:07 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
ORA__SQL, Ну вот смотрите, Выводимый столбец 'Доля прибыли' Идет корректно по убыванию, сумма всех строк по нему составляет 100%. Я далее хочу вывести нарастающий итог этой Доли прибыли(по той же аналогии, что и Долей товаров). Но в отличии от второго, нарастающий итог выводит хрень, начиная вообще со 171%, местами за 200. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:08 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Вместо over() в запросе укажи over(order by <Критерий_нарастания_итога>) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:13 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Дело в сортировке, руки прочь от моего клиента! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:17 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
помогу, ты ему потом поможешь еще один этаж достроить. Мои интересы дальше сортировки не распространяются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:23 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Дело в сортировке, хорошо, тебе за сортировку полагается 10% от стоимости заказа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:28 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Rust_Cohle, ORDER BY селекта не распространяется как ORDER BY аналитических функций. Он должeн бть задан явно иначе вычисляется значение для всего окна. Посколько в селекте order by price*s.SALES_QNTY, то прeдположу: Код: plsql 1. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 16:46 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
SY, чёт если я начинаю использовать order by аналитической функции(какие угодно поля перепробовал) заместо общего order by, у меня начинает рушиться весь запрос. Но ведь почему же, когда я считаю тем же способом доли товаров - все работает.(естественно меняя общий ордер бай). Кстати прошу обратить внимание на условие в поле where, именно благодаря ему у меня и идет нарастающий итог по товарам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 18:05 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Кароче, я сам разобрался. Выкладываю готовый рабочий вариант БЕСПЛАТНО, может кому поможет. А то смотрю бизнесменов развелось вокруг. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 12:58 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Rust_Cohle, авторVSEGO_PRIBIL да вы батенька маньяк И на какой же версии Oracle это будет работать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 13:21 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
Rust_CohleВыкладываю готовый рабочий вариант БЕСПЛАТНО, может кому поможет.Конечно заюзаем. Пример самый что ни на есть юзабельный. И схема данных описана, и постановка задачи, и наименование объектов стандартизованное - все мы такое используем. Просто бери запрос и копируй в свою систему - скомпилится без единой ошибки. P.S. И еще, тут форум по ораклу, а запрос твой по ходу MS SQL-ный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 13:22 |
|
||
|
Не работает нарастающий итог, в чём дело?
|
|||
|---|---|---|---|
|
#18+
AmKad, Человеку будет важна логика работы запроса, на основании которой он сделает свою задачу. А не под копирку мой вариант ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 13:41 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=184&tid=1886797]: |
0ms |
get settings: |
12ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 387ms |

| 0 / 0 |
