Ankündigung

Einklappen
Keine Ankündigung bisher.

Select- Befehl mit OVERLAPS

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Select- Befehl mit OVERLAPS

    Hallo,

    ich habe folgendes Problem. Bei einer Vermietung will ich, dass die Formularfelder mit dem Start- und Endzeitpunkt der Vermietung mit schon vorhandenen Bestellungszeiträumen abgeglichen werden. Die Formularfelder sind dabei vom Typ date (<input type='date'.....) im Format YYYY-MM-DD. Meine Datenfelder in der Tabelle sind ebenfalls mit date festgelegt und haben das gleiche Format. Leider will aber kein richtiges Ergebnis kommen. Der Fehler liegt wahrscheinlich darin, dass die Datentypen nicht passen, aber da PHP ja keine hat und die Formate passen sollte es eig doch gehen....
    Hoffe mir kann jemand helfen.

    PHP-Code:
    $dbcmd->executeQuery("SELECT * FROM buchung WHERE fid = $1 AND ((DATE '$2', Date '$3') OVERLAPS (start, ende));", array($this->fid$this->start$this->ende)); 

  • #2
    Lass mal den Query ausgeben, damit man die echten Werte sieht. Und dazu gleich eine Zeile die darauf matchen sollte. (Nicht das dann z.B. fid falsch ist.)
    So muss man ein bisschen ins Blaue raten.

    Kommentar


    • #3
      Zitat von newbie1212 Beitrag anzeigen
      Hallo,

      ich habe folgendes Problem. Bei einer Vermietung will ich, dass die Formularfelder mit dem Start- und Endzeitpunkt der Vermietung mit schon vorhandenen Bestellungszeiträumen abgeglichen werden. Die Formularfelder sind dabei vom Typ date (<input type='date'.....) im Format YYYY-MM-DD.
      Nimm doch einfach DATERANGE und setze für die zu vermietenden Objekte und der Daterange einen Exclusion Constraint, dann ist da von DB-Seite her schon eine Überbuchung ausgeschlossen und mit den Range-Operatoren findest Du auch schnell freie Objekte.
      PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

      Kommentar

      Lädt...
      X