monat extrahieren und db abfragen

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

  • monat extrahieren und db abfragen

    Hallo,

    ich habe eine Tabelle in der ein Datum im folgenden Format gespeichert ist:
    TT.MM.JJJJ z.B. 12.01.2005.

    Nun möchte ich eine mysql Abfrage starten die mir alle Datensätze eines Monats anzeigt (im aktuellen Jahr),

    z.b. des Monats August 2005.

    Hab mir ein paar sachen mal auf sql.de etc. durchgelesen.. aber war irgendwie nicht das richtige..

    Wäre toll wenn mir jmd. helfen könnte...

  • #2
    MONTH() ict dein Freund, s. http://dev.mysql.com/doc/mysql/en/da...functions.html

    Kommentar


    • #3
      das sieht schon gut aus, allerdings müsste ich den monat im WHERE Statement abfragen.. im SELECT bringt es leider nichts, da er mir ja sonst als ergebnis nur die monate der datensätze ausgibt.

      Ich möchte aber alle datensätze eines monats, des aktuellen jahres..


      also ungefähr so:

      $monat = $_GET['m'];
      SELECT * FROM tabelle WHERE MONTH('datum') = '$monat';

      oder so ähnlich.. das mit dem jahr ist dann kein prob. mehr wenn ich weiß wie das andere geht

      Kommentar


      • #4
        Wozu meinst Du gibt es wohl den Spaltentyp "DATE"?
        mein Sport: mein Frühstück: meine Arbeit:

        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

        Kommentar


        • #5
          was hat das eine mit dem anderen zu tun? der sql spaltentype ist nicht date.. der inhalt der zelle ist z.B. 12.05.2005. Aus diesem Datum möchte ich den Monat für ein WHERE Statement benutzen. Vielleicht versteh ich ja auch was falsch?!

          Kommentar


          • #6
            Original geschrieben von yakuzza
            was hat das eine mit dem anderen zu tun? der sql spaltentype ist nicht date..
            eben, dass ist ja das idio^h^h^h^hdumme.
            der inhalt der zelle ist z.B. 12.05.2005.
            und warum benutzt du so einen für datümer absolut ungeeignetes format und ungeeigneten typ?
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              dass der spaltentyp date besser wäre weiß ich Leider wird das Datum per Formular eingegeben.. und das Eingabeformat ist TT.MM.JJJJ und es vor dem speichern in die DB erst zu konvertieren, weiß net.. dann bin ich vor dem selben problem..

              Es ist eigentlich einfach.. aber ich weiß nicht mehr wie es geht..

              Kommentar


              • #8
                ich lass die eingabe des datums einfach vor dem einfügen in die db in einen unix timestamp umwandeln .. so sollte es dann gehen

                Kommentar


                • #9
                  so, jetzt liegt die zeit im form des unix timestamps in der db vor. Wie kann ich aber jetzt im WHERE Statement der Abfrage nach Monat und Jahr Abfragen?

                  Ich finde immer nur die Kommandos für SELECT also z.b. SELECT UNIX_TIMESTAMP();

                  oder aber SELECT MONTH();

                  Das muss im WHERE doch auch gehen...

                  Kommentar


                  • #10
                    Original geschrieben von yakuzza
                    so, jetzt liegt die zeit im form des unix timestamps in der db vor.
                    ungünstig, wie gesagt.
                    Das muss im WHERE doch auch gehen...
                    ja - mach's doch einfach!
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      http://www.php-resource.de/forum/sho...threadid=59379

                      warum müssen's jetzt timestmaps sein? jetzt musst du die ganze berechnung (wie eben das mit dem monat) mit php durchführen...

                      Kommentar


                      • #12
                        Original geschrieben von penizillin
                        http://www.php-resource.de/forum/sho...threadid=59379

                        warum müssen's jetzt timestmaps sein? jetzt musst du die ganze berechnung (wie eben das mit dem monat) mit php durchführen...
                        Wieso? kann doch SQL auch, oder?

                        Oder nicht? Vielleicht sollte ich heut einfach besser zu Bett gehen und meinen scheinbar immer noch vorhandenen Rausch ausschlafen.
                        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                        Schön - etwas Geschichte kann ja nicht schaden.
                        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                        Kommentar


                        • #13
                          Original geschrieben von Quetschi
                          Wieso? kann doch SQL auch, oder?
                          ja.

                          aber es ist und bleibt umständlicher.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            wenn du willst, kannst du sogar ein input-feld basteln und den besucher auffordern, das datum, nach dem er sucht, mittels eines handelsüblichen taschenrechners in "sekunden seit 1970" umzurechnen. die frage, ob dieser umstand irgendjemandem etwas bringt, ist druchaus berechtigt

                            Kommentar


                            • #15
                              Original geschrieben von wahsaga
                              aber es ist und bleibt umständlicher.
                              Naja, sooo umständlich ist ja auch wieder ned.

                              WHERE from_unixtime(`timestamp_feld`,'%m%d') = '200508'

                              so in der Art
                              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                              Schön - etwas Geschichte kann ja nicht schaden.
                              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                              Kommentar

                              Lädt...
                              X