|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
Добрый день! Исходные данные на картинке. Запрос делает выборку и сортирует по START_DT. Как бы к этой выборке написать запрос, который бы из следующего START_DT вычитал бы дату предыдущего END_DT. А результат писать в первую строку в доп колонку. Куда смотреть, какую функцию покурить? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 19:17 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
прошу простить, на картинке наоборот написано, что от чего отнимать, но сути это не меняет. нужна разность дат между строками. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 19:18 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
rtyts Куда смотреть, какую функцию покурить? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 19:21 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
alexeyvg rtyts Куда смотреть, какую функцию покурить? Это спасет. Но если версия сервера позволяет. а так - JOIN с ближайшей строкой ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 19:46 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
А как "заджоинить" ближайшую строку, подскажите плиз? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 20:58 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
rtyts А как "заджоинить" ближайшую строку, подскажите плиз? по ближайшему ID условия писать умеете? MIN(ID) который больше чем текущий ID ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 21:15 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
Нестандартное мышление rtyts А как "заджоинить" ближайшую строку, подскажите плиз? по ближайшему ID условия писать умеете? MIN(ID) который больше чем текущий ID rtyts, вы бы сказали версию, а то сколько решений нужно найти, прежде чем выяснится, для какой версии их нужно искать? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2020, 21:17 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
rtyts А как "заджоинить" ближайшую строку, подскажите плиз? Не надо ничего Джойнить. Это 15-летняя давность. "Скользящее окно" -- выясните для себя, что это такое и джойнов в вашей жизни станет меньше. Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 08:24 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
a_voronin rtytsА как "заджоинить" ближайшую строку, подскажите плиз? Не надо ничего Джойнить. Это 15-летняя давность. "Скользящее окно" -- выясните для себя, что это такое и джойнов в вашей жизни станет меньше.Джойнить - это был ответ на утверждение ТС, что скользящее окно не поддерживается версией. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 08:31 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
alexeyvg это был ответ на утверждение ТС, что скользящее окно не поддерживается версией. Я чего-то не вижу такого утверждения от ТС. LEAD LAG c 2012. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 09:20 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
a_voronin alexeyvg это был ответ на утверждение ТС, что скользящее окно не поддерживается версией. Я чего-то не вижу такого утверждения от ТС. LEAD LAG c 2012. rtyts А как "заджоинить" ближайшую строку, подскажите плиз? Иначе зачем бы ему искать громоздкое, сложное, медленное решение, вместо простого и быстрого? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 13:00 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
alexeyvg a_voronin пропущено... Я чего-то не вижу такого утверждения от ТС. LEAD LAG c 2012. rtyts А как "заджоинить" ближайшую строку, подскажите плиз? Иначе зачем бы ему искать громоздкое, сложное, медленное решение, вместо простого и быстрого? Не очевидно. Пусть TC сам скажет версию своего мегасервака, а мы не будем гадать на скульной гуще. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 13:09 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
rtyts, rtyts А как "заджоинить" ближайшую строку, подскажите плиз? пронумеровать, отсортировав по времени, скажем, row_number(), а потом соединить на основании этих номеров ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 13:26 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
Всем Спасибо! Сделаю через OVER. Версия Microsoft SQL Server 2014 (SP2) (KB3171021) - 12.0.5000.0 (Intel X86) Jun 17 2016 19:21:56 Copyright (c) Microsoft Corporation Express Edition on Windows NT 6.3 <X64> (Build 18363: ) (WOW64) сорри, что не указал вначале, как должно было бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 22:43 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
godsql rtyts, rtyts А как "заджоинить" ближайшую строку, подскажите плиз? пронумеровать, отсортировав по времени, скажем, row_number(), а потом соединить на основании этих номеров Причем, возможно, это даже быстрее будет, чем вариант с LAG/LEAD ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 20:33 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
uaggster godsql rtyts, пронумеровать, отсортировав по времени, скажем, row_number(), а потом соединить на основании этих номеров Причем, возможно, это даже быстрее будет, чем вариант с LAG/LEAD LAG/LEAD работает с потоком, просто храня в переменных следующие/предыдущие записи, а соединение по номеру делает джойн двух множеств записей. Не сравнивал, но теоретически LAG/LEAD должны быть намного быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 08:27 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
Тогда если сравнивать производительность, то следует добавить и однопроходное нелаговое/лидовое. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 13:32 |
|
найти разницу времени между строками одного запроса
|
|||
---|---|---|---|
#18+
nullin Тогда если сравнивать производительность, то следует добавить и однопроходное нелаговое/лидовое. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 13:35 |
|
|
start [/forum/topic.php?fid=46&msg=39961899&tid=1686068]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 146ms |
0 / 0 |