Hoi,
du könntest ein mehrfach-dimensionales (2-Dim) Array verwenden, PHP kann dies. Etwas schneller als 20 DB-Abfragen sollte es dann schon sein, wobei die Geschwindigkeit bei 20 Queries und 1200 Datensätzen sowie der vermeintlichen gleichzeitigen Nutzer nicht so maßgeblich sein dürfte.
Nur ob du dir damit (die Gesamtmenge ins Array zu packen und dann daraus zu selektieren -> Schleifen und if/switch) das Leben einfacher machst ... ?
Tom's Vorschlag mit Snapshots in temporären Tabellen ist leider auch nicht ganz bis zu Ende gedacht, aber das konnte er angesichts der mangelhaften Problemschilderung auch nicht besser machen.
Du solltest unsere Hinweise auf eine ausführlichere Problembeschreibung für deine Zukunft als Programmierer durchaus beherzigen, denn manchmal hast du die Lösung bereits wenn du das eigentliche Problem nur mal richtig beschreiben kannst. :)
Adé
Frank