Susanne Jäger: (mysql) Abfrage mit berechneten Werten

Beitrag lesen

Hallo,

ich stoße gerade an die Grenzen meiner SQL-Fähigkeiten, vielleicht kann mir ja jemand helfen.

Tatort:
MySQL Datenbank zur Verwaltung von Videoaufnahmen.
Darin u.a.
* eine Tabelle cass(etten) mit den Feldern cassID, cassName, cassLaenge
* eine Tabelle aufnahmen mit u.a. den Feldern aufnahmeID, cassID, position, laenge

auf die Erfassung der Restlaufzeit in der Datenbank wollte ich verzichten ('keine computed values'), da ich dachte, dass die sich ja errechnen läßt.

Das schaffe ich aber nur jeweils für eine einzelne Kassette, indem ich nacheinander zwei Abfragen starte und PHP die Differenz ausrechnen lasse.

Was ich gerne hätte:
eine MySQL-Abfrage, die mir die Restlaufzeit aller Kassetten ermittelt um damit z.B. Abfragen wie "Wo ist denn noch mehr als 75min Platz" möglich zu machen.

mein letzer Versuch war:

"SELECT c.cassName,  c.cassLaenge,  a.laenge, (c.cassLaenge - a.laenge) AS restzeit FROM aufnahme a, cass c WHERE  c.cassID = a.cassID"

aber damit bekomme ich nur für jede einzelne Aufnahme die Differenz von Geamtlänge der Kassette und Länge der Aufnahme, aber nicht das Ergebnis für alle Aufnahmen mit der gleichen cassID.

Geht das überhaupt oder muss ich was an der Datenstruktur ändern? Als Datenbank-Anfängerin habe ich versucht mich streng an die Normalisierungsregeln zu halten, und es dabei vielleicht übertrieben?

Ich hoffe das Problem ist halbwegs klar geworden

Susanne