Я постараюсь объяснить проблему как можно подробнее, без объяснения самого приложения.
У меня есть таблица MySQL, которая записывает время, когда сообщение было отправлено, и было ли оно прочитано или не прочитано.
Теперь мне нужно сделать столбец в этой таблице, который сообщит статус сообщения в соответствии с интервалом времени, когда оно было непрочитанным.
For example, if message was unread for:
1h - it gets status of "1";
1day - status of "2";
2days - status of "3";
3days - status of "4";
7days and more - status of "5".
Допустим, у меня есть сообщение, которое было отправлено 13:20, и оно не прочитано, имеет статус «NULL». Мне нужно, чтобы в 14:20 был статус «1», а в 13: 20 - «2».
Теперь я могу придумать пару вариантов, но они включают задания Crone каждую минуту и / или массу вычислений. Мой сайт быстро растет, и я хотел бы найти наиболее оптимальный и масштабируемый вариант. Может быть, внутри MySQL есть какая-то опция, например триггеры или что-то в этом роде.
Любая помощь приветствуется <3 </p>