andi123: Tabellenentwurfsproblem

Beitrag lesen

Hallo,

ich moechte eine Art Votingsystem fuer Bilder bauen.

Vorueberlegungen:

  • es gibt eine Tabelle mit Bildern
  • es gibt eine Tabelle mit Usern, die ueber das Bild abstimmen duerfen
  • ab einer bestimmten Punktzahl, gilt das Bild als gewaehlt und wird freigeschaltet
  • die User stimmen zeitlich unabhaengig voneinander ab
  • taeglich wird einmal ueberprueft, ob ein Bild freigeschaltet wurde
  • es muss moeglich sein, User darauf hinzuweisen, fuer welche Bilder er noch nicht abgestimmt hat

Meine Frage:
Wie speichere ich die Wertungen der Nutzer in einer Tabelle ab?

Problem:
Am einfachsten waere es in einer dreidimensionalen Tabelle, aber das geht ja nicht mit nem DB-System.

Also "X-Achse: BildID | Y-Achse: UserID | Z-Achse: Wertung"

Ich habe mir dann ueberlegt, die Tabelle so aufzubauen:

BildID | Userid~Wertung
-----------------------
      1| 1~3
      2| 1~1
      1| 2~1
      3| 2~4

Wenn ich jetzt testen will, fuer welche Bilder noch nicht gevotet wurde von einem Nutzer, dann schaue ich in die Spalte "UserID~Wertung", zerlege den String an dem "~" und gucke dann ob eine UserID fehlt.

Das ganze ist aber recht umstaendlich.

Habe ich irgendwo einen Denkfehler oder denke zu kompliziert?

Danke Andi