select last month?

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

  • select last month?

    hoi!

    /me liest da so allerhand statisken aus einer mysql db. hier mal der string:
    Code:
    "select sum(besucher) from tps_stats where p_name='$p_name' and month(datum) = month(now())-1 "
    ich will also also alle besucher vom letzten monat. das hat auch immer bestens gefunkt. nur diesen monat nicht, weil der monat davor auch ein jahr davor ist ( vermute ich ) . wer hat rat?

    EDIT:
    falsches forum
    Zuletzt geändert von schmalle; 23.01.2003, 12:19.
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

  • #2
    Versuch mal SUBDATE(date, INTERVAL 1 MONTH)
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      da habe ich dann aber nicht den ganzen monat, sondern heute vor einem monat ... oder bin ich jetzt verwirrt?
      h.a.n.d.
      Schmalle

      http://impressed.by
      http://blog.schmalenberger.it



      Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
      ... nur ohne :-)

      Kommentar


      • #4
        Du bist verwirrt
        Du musst das natürlich anpassen und einbauen etwa so:

        select sum(besucher) from tps_stats where p_name='$p_name' and month(datum) = month(SUBDATE(datum, INTERVAL 1 Month);
        Aber dann soltest Dz noch das year ähnlich checken...
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          Code:
          SELECT SUM(besucher)
            FROM tps_stats
           WHERE p_name='$p_name'
             AND MONTH(datum) = MONTH(now()-INTERVAL 1 MONTH)
             AND YEAR(datum)=YEAR(now()-INTERVAL 1 MONTH)
          würd' ich mal vorschlagen ...
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            ist es immer der Monat vor now() der gefragt wurde?
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              Re: select last month?

              Code:
              "select sum(besucher) from tps_stats where p_name='$p_name' and month(datum) = month(now())-1 "
              ich will also also alle besucher vom letzten monat. das hat auch immer bestens gefunkt. nur diesen monat nicht, weil der monat davor auch ein jahr davor ist ( vermute ich )
              jepp.
              ist eigentlich recht logisch.

              month(now()) liefert dir eine zahl zwischen 1 und zwölf zurück.

              wenn du davon jetzt im januar eins abziehst, bist du bei monat 0.

              das du damit nicht an die einträge vom letzten dezember rankommst (monat 12), ist also nur normal...
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                da hab ich ja wieder was angefangen

                eure bisherigen vrschläeg ( danke ) bringen leider auch nichts. mellopies´s gibt auch nichts aus ( wie meins ), und @goth, nun ja, im nächsten monat funkt das dann wieer nicht, weil er ein ganzes jahr zurück geht

                ich muss einfach immer den letzten monat haben
                h.a.n.d.
                Schmalle

                http://impressed.by
                http://blog.schmalenberger.it



                Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                ... nur ohne :-)

                Kommentar


                • #9
                  und wenn du dir einfach selbst eine kleine php-funktion schreibst, die dir in abhängigkeit vom aktuellen datum den entsprechende anfang und das ende des vormonates als string im mysql-datumsformat erzeugt, und diese dann in der where-bedingung zum vergleichen benutzt...?
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    nach dem motto "warum leicht machen, wenn´s auch kompliziert geht"? da muss es doch nen select für geben.
                    h.a.n.d.
                    Schmalle

                    http://impressed.by
                    http://blog.schmalenberger.it



                    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                    ... nur ohne :-)

                    Kommentar


                    • #11
                      @schmalle
                      klar bringt das was now() - INTERVAL 1 MONTH ergibt immer den vorherigen Monat unabhängig davon ob Jahreswechsel dabei ist...
                      Genauso mit dem YEAR
                      Das Query von Goth sollte genau das Ergebnis geben...
                      Beantworte nie Threads mit mehr als 15 followups...
                      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                      Kommentar


                      • #12
                        Original geschrieben von goth
                        Code:
                        SELECT SUM(besucher)
                          FROM tps_stats
                         WHERE p_name='$p_name'
                           AND MONTH(datum) = MONTH(now()-INTERVAL 1 MONTH)
                           AND YEAR(datum)=YEAR(now()-INTERVAL 1 MONTH)
                        würd' ich mal vorschlagen ...
                        das sehe ich genau wie MelloPie.

                        mit now()-INTERVAL 1 MONTH wird immer einen monat zurück gesprungen, wie gewünscht. im januar hast du dezember letzten jahres. im februar hast du januar diesen jahres.

                        jetzt brauchst du aber monat und jahr getrennt. das passiert doch mit den fkt. MONTH und YEAR, die nichts anderes machen, als den monat (das jahr) aus einem übergebenen parameter zu ermitteln. der parameter ist heute minus einen monat in beiden fällen.

                        das wird so einwandfrei funktionieren.
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          Genau ... deshalb heißt es ja auch:
                          Code:
                          YEAR(datum)=YEAR(now()-INTERVAL 1 MONTH)
                          Und nicht:
                          Code:
                          YEAR(datum)=YEAR(now())-1
                          carpe noctem

                          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                          Kommentar


                          • #14
                            ja, ihr habt ja recht es funkt ja auch ich werde nie wieder eure kompetenz in fragen stellen
                            h.a.n.d.
                            Schmalle

                            http://impressed.by
                            http://blog.schmalenberger.it



                            Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                            ... nur ohne :-)

                            Kommentar


                            • #15
                              und weils so schön war, kommt das jetzt ins SQL-Forum!

                              gruss

                              Kommentar

                              Lädt...
                              X