|
|
|
с update-ом приподзабыл +
|
|||
|---|---|---|---|
|
#18+
tchingizDima T[ Но такой подход не применим если используется ссылочная целостность. Как правило она используется. В реальности в таблице транзакций (SPJ) еще будут даты надо обновлять только тех, у кого были транзакции за последний день - а это уже точно быстрее. Какую ссылочную целостность ты имеешь ввиду? Внешние ключи из sum_details поле ss на таблицу S поле s, явно не помешает. Удалять все не обязательно. Есть два способа обновить данные: 1. UPDATE 2. DELETE + INSERT у каждого есть плюсы и минусы. Например UPDATE не обновить запись которой нет, т.е. надо предварительно ее наличие проверить и сделать INSERT, т.е. реально в коде это выливается в if(SELECT) {UPDATE} else {INSERT} для одной записи, в случае набора записей задача усложняется. Во втором случае DELETE не даст удалить запись на которую есть ссылки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2015, 13:51 |
|
||
|
с update-ом приподзабыл +
|
|||
|---|---|---|---|
|
#18+
tchingizDima Tпропущено... Хуже если его нет, значит есть куча селектов. ну, а ты сказал что это быстрее Код: plaintext 1. 2. 3. 4. 5. чем тебя group by пугает? Это дополнение к sum() Я имел ввиду быстрее чем Код: sql 1. 2. 3. 4. который в реале может быть выполнен так Код: sql 1. 2. 3. 4. 5. а может быть так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Поразбирайся как планы выполнения запросов смотреть, там видно что реально происходит. Количество букв и подзапросов не показатель. Лично я вообще стараюсь подзапросов избегать, чтобы не грузить сервер лишней работой по построению сложных планов. Это у него не всегда удачно получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2015, 14:03 |
|
||
|
с update-ом приподзабыл +
|
|||
|---|---|---|---|
|
#18+
tchingizбум! покажи результат, а то из-за этого лениво ставить чтото еще кроме sqlite.держи Код: 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. 78. 79. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Код: plaintext 1. 2. 3. 4. 5. Код: plaintext Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2015, 22:05 |
|
||
|
с update-ом приподзабыл +
|
|||
|---|---|---|---|
|
#18+
egorych, аааа, все понятно, я в спешке испортил твою версию у тебя было Код: plaintext 1. а я написал Код: plaintext 1. 2. 3. в sqlite после set есть только фраза where ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2015, 23:36 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39130811&tid=1340850]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
139ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 416ms |

| 0 / 0 |
