Mysql
 sql >> Baza danych >  >> RDS >> Mysql

W jaki sposób fora pokazują nieprzeczytane tematy?

najprostszy sposobem jest śledzenie ostatniego logowania. Kiedy wracają, wszystko, co zostało zaktualizowane od tego czasu, jest oczywiście „nowe”.

Wiąże się to jednak z pewnymi problemami, ponieważ wylogowanie skutecznie oznacza wszystkie elementy jako przeczytane.

Jedynym innym sposobem, w jaki mógłbym to zrobić, byłoby utrzymywanie tabeli zawierającej wszystkie wątki i najnowszy post w tym wątku, który widział każdy użytkownik.

user_id   thread_id   post_id
      1           5        15
      1           6        19

Dzięki tym informacjom, jeśli w wątku nr 5 jest post, którego identyfikator jest większy niż 15, to wiesz, że są tam nieprzeczytane posty. Zaktualizuj tę tabelę tylko o post_id najnowszego posta na tej stronie . Oznacza to, że jeśli są 3 strony nowych postów, a użytkownik wyświetla tylko pierwszą, nadal będzie wiedział, że są nieprzeczytane posty.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd 1148 MySQL Użyte polecenie jest niedozwolone w tej wersji MySQL

  2. Zrozumienie SUM(NULL) w MySQL

  3. Jak zainstalować MySQL na Ubuntu?

  4. Wstaw Mysql do 2 tabel

  5. Wypełnianie zdarzeń w pełnym kalendarzu javascript z bazy danych