|
|
|
Обновление счётчиков
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток и с уже наступившим праздником)). Столкнулся с задачей, незнаю даже с какого края к ней подступится. Имеетются таблицы: `items`: idnamegroup_id1Имя112762Имя212763Имя325544Имя413255Имя5165......... `group_id` - идентификатор группы в которой находится итем (`groups`.`id`) `groups`: idnameparent_group_idcount_children_items............165 Название группы1 25 1501277Название группы11 165781325Название группы1111277152554Название группы1121277 52555Название группы2 242532556Название группы21 255599............ `parent_group_id` - идентификатор группы родителя `count_children_items` - количество итемов в папке и дочерних папках `houses`: iditems_idcount.........11 0.0021 0.0031 3.0042 5.5053 0.0064 1.207510.00......... `items_id` - идентификатор итемa (`items`.`id`) После добавления записей в таблицу `items`, вполне естественно, не обновляются счетчики (`count_children_items`) в таблице `items`. Нужно составить запрос чтоб обновить счётчики, да не простой. Строки из таблицы `items` y которых сумма `houses`.`count` из соответствующих строк равна нулю не должны суммироваться к `groups`.`count_children_items`. Но и это ещё не всё, в дереве групп есть одна ветвь для которой нужно суммировать все итемы (независимо от значений `houses`.`count`) В данном случае этоа ветвь `groups`.`id` = 2555 и 2556. Хотелось бы узнать мнение более опытных людей, как это пограмотней реализовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2013, 00:30:00 |
|
||
|
Обновление счётчиков
|
|||
|---|---|---|---|
|
#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. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2013, 05:53:15 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1836059]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 405ms |

| 0 / 0 |
