|
|
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
всем привет! есть громадный запрос и вопрос по нему: можно ли его как-то упростить-соптимизировать? Код: sql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:04:56 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
Можно смело убирать ORDER BY из внутренних запросов, оно все равно смысла не имеет. Хотя, возможно, MySQL уже сам догадался это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:19:14 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
miksoftМожно смело убирать ORDER BY из внутренних запросов, оно все равно смысла не имеет. Хотя, возможно, MySQL уже сам догадался это сделать. ага! а я-то и не обратил внимания... спасибо такой вот "объединенный" запрос будет по времени меньше выполняться чем чем сумма времени три разных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:25:52 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
buyboyтакой вот "объединенный" запрос будет по времени меньше выполняться чем чем сумма времени три разных?Наоборот, больше. Еще потребуются накладные расходы на хранение их промежуточных результатов и выполнение над ними DISTINCT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:31:13 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
Еще у ряда полей не указана таблица, из которой они берутся. Подозреваю, что часть LEFT JOIN-ов по факту являются просто JOIN-ами. Тогда лучше слово LEFT убрать, чтобы у MySQL была возможность самому выбрать порядок соединения таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:33:07 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
miksoftлучше слово LEFT убрать, чтобы у MySQL была возможность самому выбрать порядок соединения таблиц. неееее! без этого ничего не получилось! да и как мускул решить вместо меня правильно?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:43:24 |
|
||
|
можно ли это упростить-оптимизировать?
|
|||
|---|---|---|---|
|
#18+
buyboymiksoftлучше слово LEFT убрать, чтобы у MySQL была возможность самому выбрать порядок соединения таблиц. неееее! без этого ничего не получилось! да и как мускул решить вместо меня правильно?!Ну так убирать, вероятно, нужно не все LEFT-ы подряд, а после внимательного рассмотрения на предмет их логики. А у MySQL есть некоторая статистика по распределению данных в таблицах. Которую можно принудительно пересобрать командой ANALYZE TABLE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2014, 14:47:06 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1834528]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
13ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 197ms |
| total: | 374ms |

| 0 / 0 |
