Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Zwei Vergleichs-Operatoren kombinieren zum eingrenzen von Uhrzeiten

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Zwei Vergleichs-Operatoren kombinieren zum eingrenzen von Uhrzeiten

    Hey Leute,

    zu allererst: Ich bin blutiger Anfänger!

    Mein Problem ganz kurz und knackig:

    Folgender Code funktioniert einfach nicht. Wie kriege ich die zwei Vergleichs-Operatoren kombiniert?
    Ich habe übrigens als Typ in meiner Datenbank für "abflug" nicht DATE genommen, sondern VARCHAR, aber das stellt nach meinen bisherigen Beobachtungen kein Problem dar.

    PHP-Code:
     $sql "SELECT Abflug,Flugziel,Airline,Typ,Flugtag,Bemerkung FROM flug WHERE abflug >= '08:00' AND <= '11:59' ORDER BY abflug DESC"

    Danke für Hilfe,
    Nils


  • #2
    Zitat von nilbu Beitrag anzeigen
    Folgender Code funktioniert einfach nicht. Wie kriege ich die zwei Vergleichs-Operatoren kombiniert?
    Indem du den Syntxfehler korrigierst den dir MySQL meldet: »<= '11:59'« ist keine vollständige Bedingung.

    Ich habe übrigens als Typ in meiner Datenbank für "abflug" nicht DATE genommen, sondern VARCHAR, aber das stellt nach meinen bisherigen Beobachtungen kein Problem dar.
    Es mag in dem Fall funktionieren, falsch ist es trotzdem - der richtige Datentyp ist TIME (evt. auch DATETIME mit dem Flugdatum zusammen).

    Kommentar


    • #3
      Zitat von tk1234 Beitrag anzeigen
      Indem du den Syntxfehler korrigierst den dir MySQL meldet: »<= '11:59'« ist keine vollständige Bedingung.

      Achso, jetzt hab ich es

      Es mag in dem Fall funktionieren, falsch ist es trotzdem - der richtige Datentyp ist TIME (evt. auch DATETIME mit dem Flugdatum zusammen).
      Dann muss ich aber immer wenn ich die Zeit ausgeben will das in HH:MM umwandeln, da das in der Datenbank doch immer als HH:MM:SS angegeben wird?!

      Kommentar


      • #4
        Zitat von nilbu Beitrag anzeigen
        Dann muss ich aber immer wenn ich die Zeit ausgeben will das in HH:MM umwandeln, da das in der Datenbank doch immer als HH:MM:SS angegeben wird?!
        Nur wenn du es die Datenbank nicht formatieren lässt - Faulheit ist hier keine Ausrede. Mit Varchar als Datenformat nimmst du dir jedenfalls jegliche Möglichkeit vernünftig mit den Zeitangaben zu arbeiten ...

        Kommentar


        • #5
          Zitat von nilbu Beitrag anzeigen
          Dann muss ich aber immer wenn ich die Zeit ausgeben will das in HH:MM umwandeln, da das in der Datenbank doch immer als HH:MM:SS angegeben wird?!
          Damit trennst du Verarbeitung und Ausgabe nach dem EVA-Prinzip.
          Was ist daran schlecht?

          Per Datenbank gleich zu formatieren ist nicht so mein Ding. Ist auf den ersten Blick einfacher, rächt sich aber oft später.
          PHP-Klassen auf github

          Kommentar


          • #6
            Zitat von nilbu Beitrag anzeigen
            Ich habe übrigens als Typ in meiner Datenbank für "abflug" nicht DATE genommen, sondern VARCHAR, aber das stellt nach meinen bisherigen Beobachtungen kein Problem dar.
            Es ist prinzipiell eine stunzdumme Idee, falsche Datentypen zu nutzen. Dabei bist Du bei MySQL noch in der "glücklichen" Lage, daß es da kaum sinnvolle Datentypen gibt, die man übersehen kann...
            PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

            Kommentar

            Lädt...
            X