select LIMIT 0,10 und trotzdem gesamt rows ohne limit anzeigen?

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

  • select LIMIT 0,10 und trotzdem gesamt rows ohne limit anzeigen?

    Hallo,

    es geht immernoch um mein messagingsystem...

    Mit
    select spalte1, spalte2 from messages where message_owner=1 LIMIT 0,10
    Will ich nur 10 Messages ausgeben um, den User dazu bewegen, dass er ältere Messages löscht um die Datenbank von vornherein kleiner zu halten.

    Wie kann ich mit dieser Query aber trotzdem die gesamtzahl der Treffer anzeigen, wenn zum Beispiel dem User (message_owner) 20 messages gehören? Geht das in einer Query?

  • #2
    Gar nicht ... frag' doch mit SELECT COUNT(*) nach der Gesamtzahl ...
    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


    • #3
      Würde das funktionieren?

      select count(id) AS zeilen, spalte1, spalten2 from messages where message_owner =2 LIMIT 0,10

      oder müsste ich eine extra query starten, hab das nicht ganz verstanden..
      Wenn ja, wäre das dann so richtig?

      select count(id) AS zeilen from messages where message_owner = 2

      Kommentar


      • #4
        Es würden beide wege gehen, in einem Statement oder ´mit 2 Statements

        1. SELECT spalte1, spalte2, (SELECT COUNT(id) FROM messages) AS spalte3 FROM messages WHERE message_owner=1 LIMIT 0,10

        2. SELECT spalte1, spalte2 FROM messages WHERE message_owner=1 LIMIT 0,10;
        SELECT COUNT(id) FROM messages

        Wobei ich die 2. Möglichkeit nehmen würde. Einfach aus performance gründen.
        Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

        Kommentar


        • #5
          die erste variante geht erst ab mysql 4
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Echt? Cool! Wusste ich noch nicht. Arbeite sonst mit Firebird.
            Gut zu wissen. Man lernt doch immer noch was dazu ;-)
            Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

            Kommentar


            • #7
              firebird?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                danke...
                firebird = datenbank, auch sql-basierend

                Kommentar

                Lädt...
                X