-- se-count_anz-leere-a0-raeume-in-fr1.sql -- zählt die am Freitag in der ersten Stunden freien - -- also nicht durch Unterricht belegten - Räume im Erdgeschoss des A-Gebäudes. -- -- (c) November 2005 M. Ziemke, Köln -- -- Die Lektüre einzelner Kapitel im deutschen MySQLv5-Online-Manual ist hilfreich, -- mehr zu GROUP BY... und COUNT() in Kapitel 13.2.7 -- mehr zu Benutzervariablen und ihre Nutzung in Kapitel 9.3 /* Bilde die Differenz: Zähle alle Räume mit A0 beginnend und Selektiere aus stuplan und zähle nach raum gruppiert wo tagstd FR1 ist und raum mit A0 beginnt. Verbinde dazu: - stuplan mit raum über raum_id=rid (Kursdaten, Lehrerdaten etc. sind nicht erfragt, also keine Verbindung nötig) */ SELECT @alle:=COUNT(*) FROM `llg_raum` AS ra WHERE LEFT(ra.kurz,2)= 'A0' ; SELECT @alle AS 'Anzahl A0-Räume:', @alle - COUNT(*) AS 'davon sind FR1 frei:' FROM `llg_stuplan` AS sp LEFT JOIN `llg_raum` AS ra ON sp.raum_id = ra.rid WHERE (LEFT(ra.kurz,2)= 'A0') AND (tagstd_id = 4*12+1) ;