|
|
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
Вопрос тупой, но вдруг. Тестовый пример: Код: 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. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. Самые простые кейсы увеличивают время запроса в 3 раза. То есть по времени сделать все кейсы над одной строкой надо в два раза больше, чем прочитать и записать ее на диск. То есть на примерно 150млн кейсов тратится 10сек., 15млн кейсов/сек, хотелось бы быстрее Cам тупой вопрос: можно ли как-то ускорить данный кейс? Что-то типа джоина с интервалами, но здесь они пересекаются, не подходит похоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 09:53 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
арифметические и логические операции, они же не бесплатные это тоже работает медленнее просто запроса Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 10:24 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
andreymxарифметические и логические операции, они же не бесплатные Непривычно, что здесь они стоят дороже, чем ввод/вывод, т.е. каких-то 50 кейсов медленнее, чем записать их результат на диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 10:38 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
CaseKillerandreymxарифметические и логические операции, они же не бесплатные Непривычно, что здесь они стоят дороже, чем ввод/вывод, т.е. каких-то 50 кейсов медленнее, чем записать их результат на диск.на форуме уже об этом говорили лет 5-10 назад, точно не помню а можем, и не раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 10:41 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
CaseKillerНепривычно, что здесь они стоят дороже, чем ввод/вывод, т.е. каких-то 50 кейсов медленнее, чем записать их результат на диск.а где статистики выполнения? Не вижу распределения между IO, рекурсивными операциями и самими вычислениями case. И зачем такое усложнение с CTAS? Просто запрос было бы показательнее. Кроме того, это: Код: 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. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 16:27 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
xtenderбудут разными: сравни длины типов их полей.ошибся - перепутал... тут тупо number'ы будут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2018, 16:40 |
|
||
|
Переписать запрос (case)
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. Код: 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. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2018, 08:17 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39583735&tid=1884597]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 303ms |

| 0 / 0 |
