|
|
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
авторselect t1.DDATES, initcap(to_char(t1.DDATES,'DAY','NLS_DATE_LANGUAGE=RUSSIAN')) P_D_RUS, ((SELECT NULL FROM DUAL) ||'['|| (SELECT COUNT (*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID in (20319110, 24439460, 21178087, 33232, 33233)) ||']'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=20319110 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=24439460 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=21178087 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=33232 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=33233 AND nvl(HOSP_HISTORY_DS,0) = 0 )) as DAY_TOTAL, -- НО-1 ((SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD where trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND HOSP_PLAN_KIND=75600447 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/ AND PAYMENT_KIND_ID in (20319110, 24439460, 21178087, 33232, 33233)) ||' ('|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE HOSP_PLAN_KIND=75600447 and trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID=20319110 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/) ||'/'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE HOSP_PLAN_KIND=75600447 and trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID=24439460 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/) ||'/'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE HOSP_PLAN_KIND=75600447 and trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID=21178087 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/) ||'/'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE HOSP_PLAN_KIND=75600447 and trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID=33232 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/) ||'/'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE HOSP_PLAN_KIND=75600447 and trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID=33232 AND nvl(HOSP_HISTORY_DS,0) = 0 /*AND RECORD_STATUS = 1 AND DEP_ID is not null*/)||')' ) as NO_1_TOTAL from table (cast (d_pkg_dat_tools.DATES_IN_RANGE(to_date('01-07-2018', 'dd-mm-yyyy'),to_date('31-07-2018', 'dd-mm-yyyy'),1) as D_CL_DATE)) t1 order by t1.DDATES Выкладываю кусок кода т.к весь запрос состоит из 6 кусков кода ,включая вложенные подзапросы. Запрос выполняется оч.долго, коллеги которые работают в программе с этим отчетом просто вешаются,когда он формируется по 10 минут Вопрос, как убрать подзапросы или как мне его правильно оптимизировать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:10 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, почитать про PIVOT или реализацию на CASE/DECODE в версиях, его не поддерживающих... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:15 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:16 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234 Код: 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. Выкладываю кусок кода т.к весь запрос состоит из 6 кусков кода ,включая вложенные подзапросы. Запрос выполняется оч.долго, коллеги которые работают в программе с этим отчетом просто вешаются,когда он формируется по 10 минут Вопрос, как убрать подзапросы или как мне его правильно оптимизировать ? Хотя, всё равно - нечитабельно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:17 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна,читал я про pivot, но дело в том , что он мне все суммирует т к таблица у меня одна точнее представление, а данные то нужно достать разные из этого представленияб согласно условиям. Как быть не знаю Вот как делал : авторSELECT * FROM ( SELECT COUNT(*) cnt, 'HOSP_PLAN_KIND' id FROM D_V_HPK_PLAN_JOURNALS_ADD where trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID in 20319110 UNION ALL SELECT COUNT(*) cnt, 'HOSP_PLAN_KIND' id FROM D_V_HPK_PLAN_JOURNALS_ADD where trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID in 24439460 UNION ALL SELECT COUNT(*) cnt, 'HOSP_PLAN_KIND' id FROM D_V_HPK_PLAN_JOURNALS_ADD where trunc(plan_date) >= to_date('01-07-2018', 'dd-mm-yyyy') and trunc(plan_date) <= to_date('31-07-2018', 'dd-mm-yyyy') AND PAYMENT_KIND_ID in 33232 ) pivot ( min (cnt) FOR id IN ( 'HOSP_PLAN_KIND' AS OMS, 'HOSP_PLAN_KIND' AS VMP, 'HOSP_PLAN_KIND' AS FED) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:20 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, не понял тут ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:24 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234 Как быть не знаюПредоставить удобняе для использования тестовые данные, желаемый результат на них и словесное описание сути "хотелки".... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:26 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, Щас попытаюсь объяснить как могу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:27 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Щукина Анна, не понял тут ?? 0) вам было предложено переписать запрос через PIVOT или его аналоги на CASE/DECODE 1) вам была дана ссылка на описание того, как "развернуть" результат при помощи decode 2) ваш пост был подправлен, в него было вставлено форматирование, чтобы код выглядел как код, а не как остальной текст сообщения что из этого у вас вызвало непонимание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:28 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
прощай, индекс Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:28 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, 2) пункт был не понятен ,теперь пояснили спс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:29 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
andreymxпрощай, индекс Код: plsql 1. и так - 10 раз подряд :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:30 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, Начинайте по кусочкам 1. Вот это вложенное убожество Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. превратите вот в такое например: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:36 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, будьте, пожалуйста, внимательнее, когда отвечаете адресно. Я - не ТС, мне можно не отвечать ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:39 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Друзья спокойствие только спокойствие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:48 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, На счет этого убожества полностью с вами согласен, писал его не я и поэтому попросил помощи, чтобы из этого убожества сделать конфетку. ((SELECT NULL FROM DUAL) ||'['|| (SELECT COUNT (*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID in (20319110, 24439460, 21178087, 33232, 33233)) ||']'|| (SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=20319110 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=24439460 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=21178087 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=33232 AND nvl(HOSP_HISTORY_DS,0) = 0 ) ||'/'||(SELECT COUNT(*) FROM D_V_HPK_PLAN_JOURNALS_ADD WHERE trunc(PLAN_DATE)=trunc(t1.DDATES) AND PAYMENT_KIND_ID=33233 AND nvl(HOSP_HISTORY_DS,0) = 0 )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:51 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Ой опять не выделил запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:51 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна - извините если чем обидел Александер234, Переписать 2-ю часть: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. на Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Заметить ошибку или странность кода - выделенно красным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 13:56 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Далее подумать про индексы, как отмечалось ранее, и заменить Код: plsql 1. на Код: plsql 1. Ну и так далее, до "конфетного" вида ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 14:00 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Спасибо , а то тут все умные никто по существу пример привести не мог даже. Теперь знаю в каком направлении мне двигаться. Показали хоть как избавиться от этих подзапросов долбанных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 14:02 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Вы пока от них не избавились, и еще 2 - осталось. Но если подумаете/попробуете - все у Вас получиться. Кушайте слона по частям - легче переварить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 14:05 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, МИр не без добрых людей ,а то нахватались умных слов и кидаются ими, а по существу помочь никто не может . Еще раз Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 14:07 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, 1) гляньте что выдает select * from table (cast (d_pkg_dat_tools.DATES_IN_RANGE(to_date('01-07-2018', 'dd-mm-yyyy'),to_date('31-07-2018', 'dd-mm-yyyy'),1) as D_CL_DATE)) t1 2) постройте план для одного из кусков и увидете где затык 3) 21562231 в случае наличия подходящего индекса может есть смысл убрать trunc( ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2018, 14:08 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Stax, Выдает список дат . тут все ровно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 13:55 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, собрал я запрос теперь формируется 14 сек против минуты , но загрузка через web форму стала по легче, но все ровно долговато. Я так понимаю мне теперь в сторону HTML копать надо ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 13:58 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234MaximaXXL, собрал я запрос теперь формируется 14 сек против минуты и не правильно )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:04 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Тогда уже вывидите такое, для полного понимания: Код: plsql 1. 2. 3. 4. и такое: Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:04 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
DВААлександер234MaximaXXL, собрал я запрос теперь формируется 14 сек против минуты и не правильно )))) такое тоже бывает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:06 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234MaximaXXL, собрал я запрос теперь формируется 14 сек против минуты , но загрузка через web форму стала по легче, но все ровно долговато. Я так понимаю мне теперь в сторону HTML копать надо ? Смотря что собрали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:07 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:52 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:52 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
DВА, И почему же неправильно ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:53 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, А Собрал я вот что: Код: 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. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:56 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Спрашивайте постараюсь прояснить непонятные моменты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 14:59 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Везет Вам что у меня время есть =) Почему неправильно - потому что программист должен быть внимательным (аки доктор ) Смотрите красный маркер под спойлером Код: 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. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. Да и я думал что Вы продолжите переделку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 15:40 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Да и я думал что Вы продолжите переделку. Какую переделку ? Этот код можно еще улучшить ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 15:56 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Спрашивайте постараюсь прояснить непонятные моменты если переделываете то можно продолжить (но очень внимательно) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 15:56 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, И я почему-то думал что первый раз Вы остановитесь на вот таком варианте (а не закините селект на пол дороги) Код: 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. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. Оставил Ваши ошибки для Total3 and Total4 Сам скрипт проверять нет ни вашей базы, ни особого желания, может где и накосячил со скобками ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 15:57 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Спасибо тебе ))! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 15:58 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Этот код можно еще улучшить ? Ну исписать полотенце много ума не надо. А вот подумать и не шариться многократно по одним и тем же таблицам - требует не только внимания к деталям, но соображения, здравого смысла и даже немного фантазии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2018, 16:04 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Привет, снова нужна помощь по запросу одному. Поможешь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 16:30 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Тут многие могут помочь ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 16:34 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Вообщем скидываю Громоздкий селект как поправить не знаю Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 16:35 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Не знаю как многие, но что то в тот раз помог мне только ты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 16:37 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Вообщем скидываю Громоздкий селект как поправить не знаю Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Он не громоздкий, он туповатый, как бы не прискорбно это не звучало Первое что надо делать: Код: plsql 1. 2. 3. 4. 5. 6. Второе - вывести данные: Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 16:58 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Да ,эти говнокоды писал не я .Достались мне. Люди работать не могут вешаются . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:02 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Второй пунк не понял . Вывести и скинуть скрин сюда ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:10 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234, Я уже где-то писал, если не сильны (лень копаться) - отказывайтесь ... или берите много времени. А дальше: читать и эксперементировать ... Да, это не быстро, но Вам досталось, а на форуме переписали ... это ... ну как бы не правильно наверно На сайте есть раздел Работа, там люди помогают за деньги. Т.е. если Вы получаете деньги и не имеете возможности учиться. Отдаете часть денег и за Вас все сделают. Но мой Вам совет, проще читать и эксперементировать. Это значит Вы учитесь, а Вам за это еще и платят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:11 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234MaximaXXL, Второй пунк не понял . Вывести и скинуть скрин сюда ? Ну скажем так, они мне не нужны, это для Вас. Посмотреть, если нет времени в обоих таблицах то trunc(h.hc_date)=trunc(dec_date) замедляет процесс поиска и его надо менять на h.hc_date = dec_date. Это было в этой же ветке. Я еще раз повторюсь - форум должен помогать учиться, а не делать работу за Вас. То что я переписал прошлый селект, думая что помогаю Вам понять, что надо делать, похоже Вас наставило на неверный путь. Вы не стали думать, а просто пришли с новой проблеммой, а это очень прискорбно мне осознавать. Я хотел научить Вас как правильно и по шагам делать преобразования в больших селектах, а получилась "медвежья услуга" Вы отдали старый селект даже не проанализировав что на что и почему менялось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:19 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Громоздкий селект как поправить не знаю список рекомендаций как и в прошлый раз - рефакторите скалярные подзапросы из select-листа в форму джойна. чтобы многократно не бегать в одни и те же таблицы... а дальше уже пивотом или аналогами на case/decode разворачивайте в нужный вид. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:21 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Копаться не лень и есть время ,а что касается раздела работа ,то за деньги понятное дело,что все сделают . На мой взгляд на то он и форум ,чтобы помочь навести на мысли . Если ты например знаешь почему и не помочь другому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:21 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Никто не в коем случае не просит все делать за меня . Где то затупил ,просмотрел и снова скинул на форум .Я согласен все делать сам . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:25 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234MaximaXXL, Никто не в коем случае не просит все делать за меня . Где то затупил ,просмотрел и снова скинул на форум .Я согласен все делать сам .ну так делайте. пути оптимизации вам наметили: 1) до минимум свести обращения к одним и тем же источникам данных 2) по возможности - избавиться от коррелированных подзапросов в пользу джойнов 3) внимательно следить за применением функций к индексированным полям таблиц, чтобы не ломать SARG-предикаты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:32 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, Спасибо это любой Гугл и янедекс говорит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:34 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Спасибо всем за участие . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:37 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Пойду копаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:37 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Щукина Анна, Спасибо это любой Гугл и янедекс говорит.значит нужно прислушаться .... и сделать всё самому. либо уже не лукавить и честно попросить сделать всё за вас... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:41 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Александер234Пойду копаться.давно пора :) ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 17:41 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
MaximaXXL Код: plsql 1. 2. 3. Код: plsql 1. даёт NULL надо concat() юзать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 00:02 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78MaximaXXL Код: plsql 1. 2. 3. Код: plsql 1. даёт NULL надо concat() юзатьесли лень читать документацию, то вы бы хоть проверяли бы свои громкие высказывания перед тем, как высказывать их... Не поленитесь пройти по ссылке и объяснить, почему практические результаты расходятся с вашими теоретическими умозаключениями... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 04:36 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78 Код: plsql 1. даёт NULL надо concat() юзатьИ откуда ж такие придурки только вылазят? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 07:25 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Аннаtip78пропущено... Код: plsql 1. даёт NULL надо concat() юзатьесли лень читать документацию, то вы бы хоть проверяли бы свои громкие высказывания перед тем, как высказывать их... Не поленитесь пройти по ссылке и объяснить, почему практические результаты расходятся с вашими теоретическими умозаключениями... ой, я и не заметил, как в раздел к эмоциональным барышням попал не ораклом единым... http://sqlfiddle.com/#!17/9eecb/18220 http://sqlfiddle.com/#!9/9eecb/51088 все БД, как БД - обнуляют лишнее без всяких проверок, один дебильный оракл умнее всех ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 09:03 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78один дебильный ораклПшёл отседова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 09:18 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78не ораклом единым...тут каждый первый - "многостаночник", и вполне себе понимает и осознает различие в некоторых моментах работы разных СУБД. Но уж если пишите в разделе вполне определенной СУБД, до делайте это с учетом её специфических особенностей, а не проекцией опыта работы с другими продуктами... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 09:25 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78один дебильный оракл умнее всех тебе уже говорили что существует различие в функционале в разных БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 11:06 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 11:28 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Аннаtip78не ораклом единым...тут каждый первый - "многостаночник", и вполне себе понимает и осознает различие в некоторых моментах работы разных СУБД. Но уж если пишите в разделе вполне определенной СУБД, до делайте это с учетом её специфических особенностей, а не проекцией опыта работы с другими продуктами... с учётом её дебильных особенностей, называйте уже вещи своими именами, русским по белому же пишу и почему бы, собственно, не спроецировать "опыт работы с другими продуктами" на этот ваш Уракл? У вас, барышня, язык впереди головы. Сколько кошек уже есть? ещё раз для плоховидящих: все нормальные БД делают это правильно. И это хорошо, когда есть с чем сравнить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 12:27 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78, попробуйте скормить ваш CONCAT тому же самому MS SQL Server-у. Думаю, он вас пошлет туда же, куда и вариант с двойными палками (||), требуя исключительно "плюсов". Это, по вашему, тоже "дебильная СУБД", не поддерживающая персонально ваши хотелки? вам про PostgreSQL или MySQL их дебильные кривости указать или вы и сами их знаете, но сейчас скромно умалчиваете? З.Ы. мне что оракл, что PG, что My/MS SQL - всё едино. Одинаково комфортно работаю с любой из этих СУБД, не цепляясь к некоторым нелогичным особенностям (но помня про них) и не называя их "дебильными"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 12:38 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78Сколько кошек уже есть?не стОит (хотя, в вашем случае, возможно, и не стоИт) проецировать собственные комплексы на других людей... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2018, 12:39 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
Щукина Аннапопробуйте скормить ваш CONCAT тому же самому MS SQL Server-у. вы что, сказали слово на букву M?? мне что оракл, что PG, что My/MS SQL - всё едино. Одинаково комфортно работаю с любой из этих СУБД, не цепляясь к некоторым нелогичным особенностям (но помня про них) и не называя их "дебильными"... нельзя просто так пройти мимо "нелогичного" Уракла И НЕ ПНУТЬ ЕГО! в конце-концов, это же не я такую цену ставил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2018, 00:51 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
tip78надо concat() юзатьЯ правильно понял, что для обхода логичного null-поведения оператора || в логичных СУБД логично использовать функцию concat? Но. В рostgresql concat(null, null) возвращает пустую строку, а mysql и mssql возвращают null. С другой стороны, concat('x', null) в postgresql и mssql вернет 'x', а в mysql вернет null. ...огласите весь список логичных СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2018, 07:47 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
"не в логичных СУБД", а в этом конкретном случае из первого поста: автор(SELECT NULL FROM DUAL) ||'['|| (SELECT COUNT (*) ... авторС другой стороны, concat('x', null) в postgresql и mssql вернет 'x', а в mysql вернет null. ...огласите весь список логичных СУБД. postgres самый правильный подход выбрал, имхо || - так обNULLяется, а через concat() - нет это очень удобно, потому что оба варианта нужны регулярно а когда вариант всего 1, то вот это плохо и нелогично ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2018, 10:25 |
|
||
|
Как оптимизировать громоздкий запрос sql ?
|
|||
|---|---|---|---|
|
#18+
-2-, боюсь он ответить не сможет, т.к. ни одной из этих субд он толком и не знает. tip78ой, я и не заметил, как в раздел к эмоциональным барышням попал не ораклом единым... http://sqlfiddle.com/#!17/9eecb/18220 http://sqlfiddle.com/#!9/9eecb/51088 все БД, как БД - обнуляют лишнее без всяких проверок, один дебильный оракл умнее всех А тут даже не догадался, что || в mysql - логический оператор, а не конкатенация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2018, 15:20 |
|
||
|
|

start [/forum/topic.php?all=1&fid=52&tid=1883677]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
116ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 573ms |

| 0 / 0 |
