Problem beim Erstellen einer Abfrage

30/10/2009 - 17:13 von l.juenemann | Report spam
Hallo,

ich habe in meiner DB zwei Spalten, start (int, von 0 - 2400) und ende
(int 0 - 2400). Ich möchte eine Abfrage machen, ob in dem Bereich
zwischen start und ende schon der Bereich vergeben ist.
Z. B. steht in der DB 1200 - 1300, danach wird ein Wert eingegeben
1300 -1400 - das ist erlaubt. Die start- und end-Werte dürfen gleich
sein, sollte jedoch der zweite Wert 1259 - 1400 sein, dann soll das
als Ergebnis der Abfrage angezeigt werden, damit der Bereich nicht
nochmal vergeben wird.
Ich hatte es so probiert:

select count(*) from zeiten
where
start > @anfang and start < @ende
or
ende > @anfang and ende < @ende

Funktioniert nicht bei allen Werten.

Könnt ihr mir hier bitte weiterhelfen?

Lothar
 

Lesen sie die antworten

#1 Olaf Pietsch
30/10/2009 - 22:53 | Warnen spam
Hallo Lothar,
<Frage>
"l.juenemann" schrieb im Newsbeitrag
news:
ich habe in meiner DB zwei Spalten, start (int, von 0 - 2400) und ende
(int 0 - 2400). Ich möchte eine Abfrage machen, ob in dem Bereich
zwischen start und ende schon der Bereich vergeben ist.
</Frage>

select * from zeiten
where
@anfang <= ende
and
@ende >= anfang

wobei immer ende >= anfang sein muss.
Gruß Olaf
Ich unterstütze PASS Deutschland e.V. (http://www.sqlpass.de)
Blog (http://www.sqlpass.de/PASSUserBlogs...x?BlogID=3)
Regionalgruppe Köln/Bonn/Düsseldorf
(http://www.sqlpass.de/Regionalgrupp...fault.aspx)

Ähnliche fragen