Veröffentlicht 14. September 200520 j 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!
14. September 200520 j Einfach vorher einen Count() auf die Tabelle absetzen und den Result merken und ausgeben. Wo liegt das Problem?
14. September 200520 j z.B. so: http://forum.fachinformatiker.de/showpost.php?p=769838&postcount=21 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;
14. September 200520 j 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??
14. September 200520 j 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
14. September 200520 j 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
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.