Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
Народ нужна помощь, не получается решить запросом задачку. есть таблица, например date Val 01.01.2017 5 01.02.2017 2 01.03.2017 3 01.04.2017 -2 01.05.2017 -1 01.06.2017 0 01.07.2017 2 01.08.2017 5 01.09.2017 1 01.10.2017 -3 01.11.2017 -2 01.12.2017 2 01.01.2018 4 01.02.2018 6 01.03.2018 5 01.04.2018 -2 01.05.2018 -5 01.06.2018 2 01.07.2018 1 01.08.2018 -4 01.09.2018 -2 01.10.2018 -3 нужно найти количество месяцев подряд где VAL<0, то есть именно последний интервал! в данном примере это 3, но как это сделать запросом? прошу помощи Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 10:50 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
m.netda, sign-ом по Val получаешь новую колонку "знака Val" затем, определяешь инвариант - интервал постоянного значения "знака Val" и дальше, через count(*)over(partition by inv) - получаешь "количество месяцев подряд где VAL<0" для этих интервалов Всё просто :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 11:21 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 11:22 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 11:29 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
m.netda последний Непрерывный интервал где... ...а я понял как максимальный тогда так court Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 11:45 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
Получилось решить через select max(t1.date), count(*) from (select date, val, ,dateAdd ("mm",-row_nomber() over (order by val), date) as [group] from tabel where val<0) t1 group by [group] having max(t1.date)='01.10.2018' Всем спасибо за варианты, обязательно разберу их ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 12:13 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
Редкостный бред. Шоб найти ОДИН, ПОСЛЕДНИЙ - группируют ВСЮ таблицу. Ужос, летящий в пустоте мозга. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 16:24 |
|
||
|
последний Непрерывный интервал где...
|
|||
|---|---|---|---|
|
#18+
aleks222, Может и бред, но поскольку у меня по факту присутствует еще одно измерение, пусть будет продукт, то способ с группировкой показался проще, ну если честно по другому и не знаю как. Если можешь поделись опытом буду только благодарен. Полная задача в следующем имеется например 10 продуктов и по каждому набор значений VAL на каждый месяц за два года. нужно запросом получить результат продукт, количество месяцев подряд, где VAL<0 на дату отчета 01.10.2018 в идеале если значений VAL<0 по продукту нет то, чтобы по нему выводилось 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2018, 16:50 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39744104&tid=1688641]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
54ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 354ms |

| 0 / 0 |
