Wenn man die weiterverarbeiten will dann joined man die entsprechende Tabelle, da hat er uns aber die entsprechende Tabelle bisher nicht gezeigt. Entsprechend - ja, es ist aktuell suboptimal geregelt, man würde es aber optimieren indem man es richtig macht nicht indem du irgendwelche Fachbegriffe um dich wirfst die nichts mit einem korrekten Workflow oder sonst irgendwas zu tun haben.
//edit für deinen Edit:
Doch, umso größer die Daten werden desto eher musst du die Last verteilen. Für jeden Datensatz ne neue Query abzufeuern ist extrem unperformant. Bei sehr großen Anwendungen würde man vorformatieren und cachen. Wie dein "Tabelle als Objekt umbilden" aussehen würde hast du uns bisher nicht gezeigt, für mich klingt das nur als wolltest du mit Fachbegriffen um dich werfen.
Ich werfe mit Sicherheit nicht mit "irgendwelchen" Begriffen um mich. Ist schließlich mein täglich Brot
Richtig die Last verteilen. Man verteilt aber die Last nicht komplett auf den SQL-Server. Wie Du schon selber richtig erkannt hast, ist die Verteilung der Aufgaben zwischen Webserver und SQL-Server wichtig. Es gibt sowieso keine Allgemeine Lösung. Die Vorgehensart ist immer abhängig davon, was für eine Anwendung man hat.
Der Workflow ist hier relativ unwichtig. Es ist in großen Online-Shop-Systemen gang und gäbe die Datenbank fast 1:1 in PHP abzubilden. (Hier kommt wieder das Sprichtwort Objekt-Manager und Cache-Server zum Einsatz. Sprengt hier aber alles den Rahmen.)
Und hier ist auch der Knackpunkt: Ich habe nirgendswo gesagt, dass man einen Query jedes mal absendet oder ähnliches.
Die Diskussion ist hier aber auch nicht angebracht. Trägt nicht zur Lösung des Problems bei.
//edit:
Der Grund warum ich das mit den Objekten und Abbildung angesprochen habe war, dass ich davon ausgegangen bin das die Daten weiter verarbeitet werden sollten. Hier würde sich dann generell erstmal die Situation anders darstellen.