select user_id, sum(amount) total from table group by user_id order by order by total desc limit 20
У тебя amount динамический, каждый раз при его изменении тебе надо делать сортировку по всем значениямзачем?! У меня есть сводная таблица: userID и чего-то там amount. Я выбрал по ID-шнику юзера (объекта) и поправил поле.
Один юзер изменил свой amount - ваши действия?зачем сортировку? (мы ничего тут не выводим)
Оно динамическое и ты его будешь вынужден менять, а потом сортировать столбец.Меняю - ТОЛЬКО! при изменении значения.
Ну и домыслы.Аргументируй.
Ты просто сам запутался в своем решении изобретая ненужные костыли.Так все говорят, когда не понимают ничего.
В чем отличие агрегатного решения? Все никак не поймешь, что сортировку ты не минуешь?Затратная операция - не сортировка, а выборка из тучи строк нужных для подсчёта конечной суммы! Это я миную при изменении и при выводе.
Это ты аргументируй, с чего ты взял, что вывод чаще, причем "Явно".Потому, что статистика юзеров - у всех выводится несколько раз в секунду при запросах.
Ты ее не минуешь - ты ее подменяешь пулом запросов к БД от юзеров, меняющих свой амаунт.откуда там пул? там просто запросы на UPDATE для конкретного ID и всё. Притом, они все могут исполняться асинхронно.
В данной ситуации, прежде чем ты эти агрегированные данные подготовишь, ты нагрузишь БД сильнее, чем один агрегатный запрос.ЧАВО?! ЗАПРОС - точно ОДИН?! )))
Учись думать и разбираться, прежде чем сравнивать.Я стараюсь, чего и тебе желаю.
Для твоего понимания, почитай про update, которому прежде, чем изменить значение нужно его еще найти и только потом изменитьПо ключу - не нужно искать: это ссылка.
а эти апдейты будут сыпаться пропорционально кол-ву юзеров, которых в перспективе будет становиться только больше.Домыслы. Т.к. всё зависит от конкретной логики сервиса для изменения значения. Это могут быть и НЕ юзеры. В любом случае - юзеры прибавляются медленнее, чем строки в "простыне" с изменениями туда-сюда и потом их агрегация.
Один итоговый запрос vs пул запросов от всех юзеров, когда ты готовишь, как ты же пишешь, агрегированные данные. Не понял?Нет итогового ОДНОГО! ИХ столько, сколько запросов на агрегацию данных!
Желай только себе, rkjey.:D
Никакой выгоды.Только в твоём понимании.
P.S. Неудивительно было читать про тебя столько отрицательных отзывов читать. Устройся на работу что ли.Спасибо, что так переживаешь. Вижу, что ты работу себе нашёл по своему уму)))
тебе придется делать до создания агрегированного столбца кучу дополнительных запросов от всех юзеров.Каких (кроме UPDATE в момент изменения)?
update будут лететь от всех юзеров + сама сортировка, которую тоже придется делать неизбежно.Про update:
Она будет чуть дешевле, но вместе с апдейтами преимущество нивелируется. Это же понятно.Это полное непонимание процесса работы с БД. Мне даже пояснять здесь уже нечего...
про апдейт - это твой очередной высер и просто отрицание реальности.Отличная аргументация! Продолжай!
что тебя не найду в списке. Видимо, у тебя еще все впереди. Хотя причем тут комментарии и карма ...НЕ-е-е! ) Впереди - это как раз у тебя! (ну, или оставайся DUMMY :)
Ты не понимаешь главное, выйти к доске и обосраться - каждый может, но только ты выдаешь это за достижение.Не только я... Ещё много других людей и компаний. Т.к. они что-то пробуют и пытаются делать.
Да, потому что ты отстаиваешь позицию кидал и считаешь, что договоренности можно не соблюдать.Не отстаиваю, а просто указал на то, кто виноват в той ситуации. Виноват - РП-шник (девушка, которая собрала и наняла людей не проверив адекватность и без договора).
Так где работаешь?Там где адекватные люди, которые ценят знания, а не хамство.