|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
Добрый день, уважаемые! История такова: Есть база данных заявок. Эту базу пользователи хотят видеть в разном режиме фильтрации, согласно статусу заявки. Единственное, что приходит в голову, фильтровать строки прямо в SQL запросе Код: plaintext 1. 2. 3. 4. 5. 6.
tck_result - это вьюшка, обновляемая при внесении изменений в базу. :P2_X_FILTER - собственно фильтр в котором пользователь задает (ставит галки) на статусы сообщений которые хочет видеть. Значение фильтра выглядит примерно так: NEW:INPROGRESS:WAIT split - самописная функция, которая режет строку на подстроки по двоеточию. Собственно все бы ничего, но работает не быстро, хочу оптимизировать. Если заменить кусок Код: plaintext 1. 2.
на статическое перечисление ('NEW', 'INPROGRESS') и т.п., то скорость работы возрастает раз в пять. Возник вопрос, как произвести разрезание строки средствами apex? То есть передать SQL уже готовый массив строк? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2011, 17:17 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
Можно еще попробовать переписать запрос, как-то так Код: plaintext 1. 2. 3. 4. 5.
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2011, 17:36 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
т.е. так Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2011, 17:38 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
Т.е. без SQL никак не обойтись? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2011, 09:36 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
SvDev, Верно, так работает шустрее. :) Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2011, 09:46 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
еще сам SPLIT хорошо бы сделать шустрым у меня он такой ( если кстати кто знает как сделать быстрей то был бы признателен ): Код: plaintext 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. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2011, 18:50 |
|
Преобразование LOV в список строк (SPLIT)
|
|||
---|---|---|---|
#18+
Ivandr, По вопросам оптимизации лучше писать в соседний раздел, там много чего интересного подскажут. Однако же для заданного алгоритма достаточно пройти p_list один раз, а для больших LENGTH (p_del) и LENGTH (p_list) и того меньше. у вас же в цикле INSTR (l_list, p_del, 1, i); l_list явно намного больше проходится. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2011, 19:47 |
|
|
start [/forum/topic.php?fid=50&msg=37472206&tid=1876377]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 392ms |
0 / 0 |