freien Belegungszeitraum ermitteln
Hallo,
ich habe mehrere Räume die belegt werden können. Die Belegungszeiten werden in eine Firebird DB eingetragen. Tabellenfelder: ID, anfang, ende, raum. Mit einer SQL-Abfrage möchte ich herausfinden, welcher Raum für einen bestimmten Zeitraum frei ist. Mit dieser Abfrage funktioniert es:
SQL-Code:
aber nur solange der Raum einmal in der Tabelle eingetragen ist.
select distinct raum
from T_DATEN where not (ende > '12.01.2004' and anfang < '18.01.2004') and Raum = 5 Bei mehrfacher Eintragung wird der Raum als frei ausgegeben, obwohl er für den Abfragezeitraum belegt ist. Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt und mir kann jemand auf die Sprünge helfen. Gruss Rolf |
Re: freien Belegungszeitraum ermitteln
Hallo Rolf,
versuche es doch mal mit einem Subselect. Das könnte in etwa so aussehen (ungetestet!):
SQL-Code:
select distinct raum
from T_DATEN where not exists (select raum from T_DATEN where (ende > '12.01.2004' and anfang < '18.01.2004'); |
Re: freien Belegungszeitraum ermitteln
Hallo Rainer,
vielen Dank für die Antwort, aber es funktioniert nicht. Gruss Rolf |
Re: freien Belegungszeitraum ermitteln
Hallo Rolf,
dann erläutere doch bitte mal, was nicht funktioniert. |
Re: freien Belegungszeitraum ermitteln
hallo rolf, ich habe mal etwas ähnlich realisiert. es lief auf einem webserver. es wurden freie zeiten eingetragen und die belegtzeiten werden in einem grid eingetragen. gleichzeitig wurden diese denkzellen mit ir sensoren vernetzt, um die belegung auf dem grid anzuzeigen. so war es möglich einen raum im vierten stock zu betreten obwohl sich das eigene büro im erdgeschoß befand. leider war ich nur für die hardware zuständig auf die software hatte phillips die hand drauf, dürfte aber nicht so schwierig sein. jedenfalls ist das eine sehr effektive variante die räume zu überwachen . sollte nur mal so zur anregung dienen.
raik |
Re: freien Belegungszeitraum ermitteln
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Rainer,
das Ergebins der Abfrage ist null obwohl alle Räume ausser 3 und 5 frei sind. Siehe Bild von Tabelle im Anhang. Gruss Rolf |
Re: freien Belegungszeitraum ermitteln
vielleicht so
SQL-Code:
select distinct raum from T_daten where not between '12.01.2004 ' and '18.01.2004'
|
Re: freien Belegungszeitraum ermitteln
@kiar
nee, nicht wirklich. Die Daten stehen im Feld anfang und ende. Gruss Rolf |
Re: freien Belegungszeitraum ermitteln
Hallo Rolf,
Zitat:
|
Re: freien Belegungszeitraum ermitteln
hallo rolf
dann ersetze das das datum durch anfang und ende |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz