Timestamp mit Month() abfragen

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

  • Timestamp mit Month() abfragen

    Hallo,

    in einer Tabelle liegt als Datum/Zeit leider nur eine Timestamp vor...

    Wie kann ich jz z.B. alle Datensätze aus dem Monat Oktober 2008 abfragen?

    DATE_FORMAT + NOW + MONTH + YEAR?

  • #2
    Code:
    SELECT * FROM tabelle WHERE datumzeit BETWEEN '2008-10-01' AND '2008-10-31'
    oder
    Code:
    SELECT * FROM tabelle WHERE YEAR(datumzeit) = 2008 AND MONTH(datumzeit) = 10
    oder
    Code:
    SELECT * FROM tabelle WHERE datumzeit LIKE '2008-10%'
    Welche der Methoden am schnellsten ist, müsste man austesten. Ich vermute, dass die erste die beste Performance bringt.
    Zuletzt geändert von h3ll; 12.11.2008, 14:13.

    Kommentar


    • #3
      Ähm... soll das wirklich so gehen?

      Mit Timestamp meine ich natürlich diese 10-stellige UNIX-Zahl...

      Kommentar


      • #4
        Kann ich schwer riechen. Unter MySQL haben Timestamps das selbe Format wie DATETIME-Felder.

        Warum speicherst du es nicht als DATETIME ab, bzw. konvertierst die vorhandene Spalte in DATETIME?

        Kommentar


        • #5
          BETWEEN ist ja eine tolle Funktion
          Jedoch, warum wird grundsätzlich der erste Datensatz NICHT ausgegeben, obwohl er existiert?

          PHP-Code:
                  $mssqlresult mssql_query("SELECT Z_Zeit
                                          FROM zeitbuchungen
                                          WHERE (Z_Zeit BETWEEN '10.11.2008' AND '13.11.2008') ORDER BY ID ASC"
          );
                  
                  
          /*
                  DB Inhalt (Verkürzte Information)(Z_Zeit):
                  10.11.2008_1 //Fehlt später in der Ausgabe !
                  10.11.2008_2
                  10.11.2008_3
                  11.11.2008_1
                  11.11.2008_2
                  12.11.2008_1
                  13.11.2008_1
                  13.11.2008_2
                  
                  Ergebnis:
                  10.11.2008_2
                  10.11.2008_3
                  11.11.2008_1
                  11.11.2008_2
                  12.11.2008_1
                  13.11.2008_1
                  13.11.2008_2
                  */

                  // Ausgabe:
                  
          while($row mssql_fetch_object($mssqlresult))
                  {
                      echo 
          $row->Z_Zeit.'<br>';
                  } 
          Setze ich das Between zwischen z.B. dem 11.11.2008 und dem 13.11.2008 an, so fehlt "11.11.2008_1".
          Warum fehlt immer der erste Datensatz? Faszinierend.

          Kommentar


          • #6
            Ehmm.. was soll das sein? Verwende doch bitte DATE-Felder und keine Textfelder für das Datum.

            Kommentar


            • #7
              Weil du keine Daten vom Typ DateTime hast sondern String, und somit ist das Ergebnis unberechenbar. Warum legst du Daten nicht in richtigem Format ab?

              Kommentar


              • #8
                Also ich habe den Zeiger einmal auf 0 gesetzt und siehe da, der erste Datensatz erscheint wieder.
                Aber warum?
                Ich lade die query nur EINMAL und daher müsste der Zeiger doch automatisch auf 0 gesetzt sein.
                Denn sonst müsste man bei jeder Abfrage den zeiger zurücksetzen.
                Ist der Zeiger Standard auf 1 oder 0 ?

                PHP-Code:
                mssql_data_seek($mssqlresult0); 

                Kommentar


                • #9
                  normalerweise am Anfang, aber bei dir weiss man nicht so recht.

                  btw: du bist also der Truncate?

                  Kommentar


                  • #10
                    Original geschrieben von asp2php
                    normalerweise am Anfang, aber bei dir weiss man nicht so recht.

                    btw: du bist also der Truncate?
                    Der User der den Thread erstellt hat?
                    Wieso sollte ich dieser sein?
                    Ich bin phpMorpheus2 und sehr Wissenshungrig

                    Kommentar


                    • #11
                      Jo und der Thread hat nichts mehr mit dem Ursprung zu tun

                      Kommentar


                      • #12
                        Original geschrieben von Truncate
                        Jo und der Thread hat nichts mehr mit dem Ursprung zu tun
                        War ja auch nur Offtopic. Tut mir leid.
                        Passte aber grad schön ins Thema

                        Kommentar

                        Lädt...
                        X