|
|
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Доброго всем дня. Возникла такая задача ни как не могу с ней справится. Уже гуглил и перереыл все возможный форумы. Есть одна таблица. В ней столб со значениями Y и N. Нужно найти те Y-ки которые после них меняются на N. select * from enginelogs t where t.flag like 'Y' order by t.timeday Прошу вас помогите разобраться. Заранее примного благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 09:37 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
TrikaперереылПопробуй искать не по Y и N, а по 1 и 0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 09:44 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
STFF start_of_group ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 09:47 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
select * from enginelogs t order by t.timeday Выводит такой результат: timeday ---- flag ---- model 22.07.2018 ---- Y ---- rotter 21.07.2018 ---- Y ---- rotter 21.07.2018 ---- N ---- rotter 20.07.2018 ---- Y ---- rotter 20.07.2018 ---- Y ---- rotter 19.07.2018 ---- Y ---- rotter 18.07.2018 ---- Y ---- rotter 17.07.2018 ---- Y ---- rotter 16.07.2018 ---- N ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 13.07.2018 ---- N ---- rotter 12.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter мне нужны тольто те Y что идут после N тоесь: timeday ---- flag ---- model 20.07.2018 ---- Y ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 10:27 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 10:35 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Trika select * from enginelogs t order by t.timeday Выводит такой результат: timeday ---- flag ---- model 22.07.2018 ---- Y ---- rotter 21.07.2018 ---- Y ---- rotter 21.07.2018 ---- N ---- rotter 20.07.2018 ---- Y ---- rotter 20.07.2018 ---- Y ---- rotter 19.07.2018 ---- Y ---- rotter 18.07.2018 ---- Y ---- rotter 17.07.2018 ---- Y ---- rotter 16.07.2018 ---- N ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 13.07.2018 ---- N ---- rotter 12.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter мне нужны тольто те Y что идут после N тоесь: timeday ---- flag ---- model 20.07.2018 ---- Y ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter А по какому полю Вы сортируете для получения (ожидания) таких результатов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 10:43 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Trika, т.е. по какому полю понятно, но почему именно такие ... какое условие (хотябы на словах) должно Вам выдать ожидаемый результат? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 10:45 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
timeday ---- flag ---- model 22.07.2018 ---- Y ---- rotter 21.07.2018 ---- Y ---- rotter 21.07.2018 ---- N ---- rotter 20.07.2018 ---- Y ---- rotter 20.07.2018 ---- Y ---- rotter 19.07.2018 ---- Y ---- rotter 18.07.2018 ---- Y ---- rotter 17.07.2018 ---- Y ---- rotter 16.07.2018 ---- N ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 13.07.2018 ---- N ---- rotter 12.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter прошу прощения последний тот что желтым по ошибке вписал. Как видете те Y что идут после N выделены красным должны выводится в результате ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 11:28 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
мне нужны тольто те Y что идут после N тоесь: timeday ---- flag ---- model 20.07.2018 ---- Y ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter это был пример ожидаемого результата, условия я так и не смог придумать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 11:30 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
ну или сделать так чтобы он переберал эту таблицу: timeday ---- flag ---- model 22.07.2018 ---- Y ---- rotter 21.07.2018 ---- Y ---- rotter 21.07.2018 ---- N ---- rotter 20.07.2018 ---- Y ---- rotter 20.07.2018 ---- Y ---- rotter 19.07.2018 ---- Y ---- rotter 18.07.2018 ---- Y ---- rotter 17.07.2018 ---- Y ---- rotter 16.07.2018 ---- N ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 13.07.2018 ---- N ---- rotter 12.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter находил и выводил красные строки (те что идут после N) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 11:47 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Trikaмне нужны тольто те Y что идут после N тоесь: timeday ---- flag ---- model 20.07.2018 ---- Y ---- rotter 15.07.2018 ---- Y ---- rotter 14.07.2018 ---- Y ---- rotter 12.07.2018 ---- Y ---- rotter это был пример ожидаемого результата, условия я так и не смог придумать 1. Уж не знаю где Вас учили но 20.07 идет ДО 21.07 (меня так учили) 2. 14.07 - я вообще не понял под какое условие попало 3. при наличии 2 записей за 21.07 то что они будут расположенны таким образом может решить только время в датах или случай 21.07.2018 ---- Y ---- rotter 21.07.2018 ---- N ---- rotter 20.07.2018 ---- Y ---- rotter 4. lead/lag Вам в помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 11:50 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
может lag/lead поможет Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 11:53 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Anton_Demin, Вы этой конструкцией Код: plsql 1. намекаете на то что не знаете параметров lag? Код: plsql 1. или есть другой тайный смысл (например испаскудить null данные) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 12:06 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, век живи, век учись, спасибо))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 12:24 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
все равно ничего не понятно. Если вас не затруднит обьясните новичку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 14:26 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 14:43 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Trikaвсе равно ничего не понятно.Ну ссылки-то ты хоть нажимать умеешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 14:44 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
""спасибо за ответы вы помогли примерами"" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 15:15 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Trika, У нас на продакшн работает уже много лет код. Советую. Код: plsql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 15:46 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Lary Denis, Это хорошо, что у тебя в продакшене все помещается в varchar2. А то ведь и в clob с помощью xmlagg + replace собрать можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 15:52 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Lary Denis, Спасибо сейчас попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 16:02 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Lary DenisУ нас на продакшн работает уже много лет код. Советую. Это-же надо столько наворотить вместо элементарного LEAD/LAG. Код: plsql 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. А в 12C: Код: plsql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 16:15 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
Lary DenisTrika, У нас на продакшн работает уже много лет код. Советую. ... А я НЕ советую (то что у Lary Denis маленький справочник, еще не повод советовать/использовать странный код) На банальной таблице в 40к строк, он мрет: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. В то время как lag/lead превосходно справляется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 16:45 |
|
||
|
Как найти тольто то значение которое меняется?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL Код: plsql 1. В то время как lag/lead превосходно справляется А ну-ка Lary Denis, увеличь свой *enis и покажи нам свое решение через xmlagg + clob. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2018, 17:44 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39681764&tid=1883662]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 471ms |

| 0 / 0 |
