Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi.

Ich wieder;)

Folgendes.

Ich habe ja ein LIMIT in meiner SQL-Abfrage, sodass von der DB nur 250 Zeilen angezeigt werden.

Im Tabellenkopf gebe ich verschiedene Berechnungsergebnisse aus:

Anzahl Items gesamt: 250

Anzahl Items im Ablauf: 140

Anzahl Items nicht im Ablauf: 110

Anzahl Items manuell getestet: 104

Anzahl Items noch manuell zu testen: 6

Anzahl Items gesamt soll eigentlich darstellen, wieviele Items(Zeilen) die DB enthält. Aber es zeigt nur an, wieviele ich anzeigen lasse (also 250).

Darüber möchte ich noch eine Anzeige:

Anzahl Items in DB (als Bsp.), die mir die Anzahl der Items in der DB angibt.

Momentan sind es 759.

Wie kann ich so eine Ausgabe, unabhänig von meinem Limit machen?? sodass er mir ausgibt dass ich 759 Items habe, darunter aber die obigen Berechnungen, die sich auf meine 250 angezeigten Items beziehen!

Schonmal danke!

Geschrieben

Wobei Du das Ermitteln der Ergebnisanzahl so machen könntest:

$query = "SELECT COUNT(*) AS count FROM tabelle WHERE 1 AND _DEINE_BEDINGUNGEN_HALT_";

$sqlRes = mysql_query($query);

if ($sqlRes && $row = mysql_fetch_assoc($sqlRes)) $anzahlItems = $row['count'];

else $anzahlItems = 0;

Soll das count so bleiben, oder nur platzhalter für was anderes darstellen?

Da muss ich passen. Was soll ich da für Bedingungen angeben? Will einfach die Anzahl aller in der DB vorhandenen Datensaetze bekommen.. Gibts da ne Bedingung??

Geschrieben

Soll das count so bleiben, oder nur platzhalter für was anderes darstellen?

Da muss ich passen. Was soll ich da für Bedingungen angeben? Will einfach die Anzahl aller in der DB vorhandenen Datensaetze bekommen.. Gibts da ne Bedingung??

count ist die Variable, die du später aus deinem Resultset auslesen kannst.

Du meinst alle in der Tabelle vorhandenen Datensätze nehme ich an. Dann lass die Bedingung einfach weg.

Kleiner Rat:

Du solltest dich etwas mit SQL auseinandersetzen und danach den Umgang mit Datenbanken in PHP verstehen lernen. Das ist nicht wirklich schwer und erfordert vielleicht einen einzigen Nachmittag Doku blättern ;)

Geschrieben

Hi,

Ab MySQL Version 4.0 würde ich auf jeden fall SQL_CALC_FOUND_ROWS verwenden.

Das ist schneller, als einen count(*) abzusetzen und funktioniert auch mit LIMIT

Beispiel:


SELECT SQL_CALC_FOUND_ROWS * FROM abc_tabelle WHERE a = b LIMIT 100

SELECT FOUND_ROWS()

Gruß,

Markus

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...