Andi: Datenfeldüberschneidung

Beitrag lesen

Hallo,

suchst Du so etwas:

DB:
TABELLE TEST:
VON_WERT    BIS_WERT
01.01.2004  31.01.2004
01.02.2004  29.02.2004

Dann bekommst Du die Zwischenprüfung über:

SELECT count (*)
FROM test
WHERE
-- Vergleichswert von liegt in den Datumswerten
(von_wert < TO_DATE(von_vrgl,'DD.MM.YYYY') AND
bis_wert > TO_DATE(von_vrgl,'DD.MM.YYYY')) OR
-- Vergleichswert bis liegt in den Datumswerten
(von_wert < TO_DATE(bis_vrgl,'DD.MM.YYYY') AND
bis_wert > TO_DATE(bis_vrgl,'DD.MM.YYYY')) OR
-- Vergleichswerte "umaren" DB-Werte
(von_wert > TO_DATE(von_vrgl,'DD.MM.YYYY') AND
bis_wert < TO_DATE(bis_vrgl,'DD.MM.YYYY'))

Habe ich jetzt so nicht getestet, sollte aber funktionieren.

Hi,

also ich habe jetzt selbst ein bischen gebastelt:

SELECT count(*)
FROM test
WHERE 'wertZuTesten' BETWEEN DATUM1 AND DATUM2

Wenn ich jedes neue Datum mit dieser Abfrage teste dann wird immer ein richtiges Datum enthalten sein.

Manchmal sieht man den Wald vor lauter ...

Gruß
Andi