|
|
|
Подсчет в самой таблице больше/меньше значении с COUNT-ом
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Давно этим не занимался и голова лопнет, целый день над этим запросом мучаюсь. имею такую таблицу (ну, пример чуть-чуть упрощен): ид страницы, тип страницы, количество click-ов page_id page_type click_count11112 43313110 00361 9 87571 9 60281 9 87513211 254101 8 0361211 112 группировка происходит по типу страниц. Нужно в группе вычислить сколько страниц имеют больше click-ов, сколько страниц имеют меньше, и сколько страниц имеют ровное количество и приписать к соответствующему page_id. page_id page_type click_count count_worse count_better count_equal11112 43350013110 00341061 9 87522171 9 60215081 9 87522113211 254100101 8 0360501211 112010 (например, страница с page_id 6 и 8 имеют каждый : по одной странице у которого тоже самое количество click-ов, оба имеют две страницы у которых больше click-ов, и оба имеют две страницы у которых меньше click-ов) Написал запрос который делает это дело но написал тупо, запрос медленный, потому что использует 4 temporary таблиц и 4 filesort Код: 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. Посоветуйте как можно уменьшить эти 4 temporary таблиц и 4 filesort во время выполнения запроса Т.е. как можно это сделать запросом, по лучше Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2015, 19:14:30 |
|
||
|
Подсчет в самой таблице больше/меньше значении с COUNT-ом
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2015, 20:13:26 |
|
||
|
Подсчет в самой таблице больше/меньше значении с COUNT-ом
|
|||
|---|---|---|---|
|
#18+
Lumix , Блеск ..!!! В реальном варианте у меня UPDATE этой таблицы результатами этой выборки. За-JOIN-ил в UPDATE запросе с самой таблицей и работает отлично. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Огромное спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2015, 20:46:33 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1832688]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 310ms |

| 0 / 0 |
