phpbar.de logo

Mailinglisten-Archive

[php] Gleichzeitige Termine

[php] Gleichzeitige Termine

Bernhard Kraft kraftb at mokka.at
Die Dez 14 16:11:07 CET 2004


ANGEL Harald wrote:
> Schönen Nachmittag!
> 
> Ich hab eine Tabelle mit Terminen. (Termin, Anfangszeit, Endzeit)
> Wie finde ich heraus, wieviele Termine an einem Tag max. gleichzeitig sind?
> Ich muß einen Kalender programmieren...

Hallo !

Natürlich geht das ... mit einem einfachen join.
Indem du die tabelle auf sich selber joinst
du brauchst jedoch eine art eindeutige ID für jeden termin-eintrag
damit du die fälle wegsortieren kann wo ein eintrag auf sich selbst
gejoined wird

Also ca. wie folg:

SELECT termin1.begin AS begin, termin1.end AS end, termin1.uid AS uid FROM termin AS termin1, termin AS termin2
WHERE termin1.begin==termin2.begin AND termin1.uid != termin2.uid

das sucht termine bei denen sich die anfangszeit überschneidet

dann musst du nur noch hergehn und in den results suchen. und zwar nach der "uid"
(eindeutige id) die am meisten vorkommt.

also ca. so:
$uids = array();
while ($row = mysql_fetch_assoc($res)) {
	$uids[$row["uid"]]++
}

und in dem array UID musst dann nur noch nach der maximalen zahl suchen. die gibt
den termin wieder der mit den meisten anderen zum selben zeitpunkt beginnt.



hoffe dir geholfen zu haben,
Bernhard
-----------------------------------------
Bernhard Kraft
<kraftb at mokka.at>

MOKKA MEDIENAGENTUR GMBH
Mariahilferstrasse 170
1150 Wien
T: 01 895 33 33 50
M: 0676 560 14 14
F: 01 895 33 33 20
www.mokka.at
-----------------------------------------


php::bar PHP Wiki   -   Listenarchive