212 похожих чатов

Тогда вроде все просто же ? Выбираем все записи от

тех юзеров, у которых рейтинг больше Н

Юзер {рейтинг}
Реактионс {автор, таргет}

Делается или джойном или подзапросом

Типа
Селект * фром реактионс вере автор ин (селект айди фром юзерс вере рейтинг > Н)


Рейтинг в сущности юзера можно сделать атрибутом, который или пересчитывается раз в какое-то время, или обновляется триггером. Все зависит от особенностей проекта

10 ответов

7 просмотров

То есть хранить текущее значение рейтинга всех пользователей? И когда кто то делает изменение своей реакции для кого то, то придется по цепочке пересчитывать рейтинги почти всей базы?

Arthur-Irgashev Автор вопроса
Arthur Irgashev
А это должно сразу всех аффектить ?

Да, это я описывал в постановке задачи. Может быть ситуация когда рейтинг пользователя опускается ниже порога, или поднимается выше порога, и это распространится волнообразно в каких то ситуациях.

Arthur-Irgashev Автор вопроса
Vitaliy Shevchenko
То есть хранить текущее значение рейтинга всех пол...

Можно не пересчитывать всех, а вычислять рейтинг на лету. А предрасчитанный рейтинг использовать только для фильтрации

Высчитывать рейтинг на лету, это пересчитать всю базу для каждого пользователя при каждом запросе

Arthur-Irgashev Автор вопроса
Vitaliy Shevchenko
Высчитывать рейтинг на лету, это пересчитать всю б...

Так, и что ? Грамотные индексы должны решить все проблемы

Vitaliy Shevchenko
Да, это я описывал в постановке задачи. Может быть...

Это точно так должно работать? Допутим есть п1 и п2 и п3 с рейтингами 4 4 5 п3 ставит + п2 = 4 5 5 п2 ставит - п3 = 4 5 4 но оценка последнего становится неактуальная, и оценка становится 4 4 4 а значит уменьшение становится невозможным и оценка должна стать 4 4 5, значит прошлая оценка становится п3 становится актуальная и рейтинг становится 4 5 5, а значит оценка от п2 начинает работать и становится 4 5 4... продолжать до полного удовлетворения. Так что или все поставленные оценки даже после уменьшения остаются, или удачи.

Arthur-Irgashev Автор вопроса
Alex Gorodok
Это точно так должно работать? Допутим есть п1 и п...

ну да, система подсчета странная, честно говоря )

Alex Gorodok
Это точно так должно работать? Допутим есть п1 и п...

Похоже на то. Как эту схему можно улучшить?

Vitaliy Shevchenko
Похоже на то. Как эту схему можно улучшить?

Там в самом конце есть вариант. Все поставленные оценки, пока пользователь 5+ — остаются. Т.е. если оценка поставлена, то её уже может изменить только другой 5+, но не какие-либо автоматические распространения. Не вижу причин усложнять сильнее, как минимум сейчас, может у Вас там больше данных и придётся усложнять.

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Реально в одиночку написать игровой движок на Си?
ㅤ (SVO)
11
Всем привет, товарищи! Можете меня поздравить, получил "отлично" за дисциплину "языки программирования низкого уровня". Честно говоря, не очень хочу, чтобы основы асма, которы...
Ыиу
1
Карта сайта