db zeilen zählen

adblue

Well-known member
24 Juli 2009
57
2
hi

um datenbank zeilen zu zählen gibt es zwei möglichkeiten;


$anzahl = mysqli_num_rows($abfrage);

oder

SELECT COUNT(*) FROM haustier;


welche methode ist besser? wahrscheinlich die zweite oder?
wie kann ich bei der zweiten methode das ergebnis abfragen?

danke
 
Bei der 1. Methode werden alle Haustiere aus der DB gesucht und dann deren anzahl gezählt.

Bei der 2. Methode wird eine Datenbankoperation angestoßen, die die Haustiere zählt (effizienter)

:arrow: 2. Methode

Bei der 2. Methode bekommst du nur die Anzahl, zum Laden der Datensätze musst du einen weiteren Query machen. Solltest du aber wirklich sowieso alle Datensätze auf einmal benötigen, ist die 1. Methode effizienter, da du dir einen 2. Query sparst.
 
ok. danke dir. ich will aber nur die anzahl wissen.
aber wie gebe ich die anzahl aus?

so:?

$sql="SELECT COUNT(*) FROM haustier";
$abfrage = mysqli_query($verbindung,$sql);
echo $abfrage;
 
PHP:
$sql="SELECT COUNT(*) AS zahl FROM haustier";
$abfrage = mysqli_query($verbindung,$sql);
$zeile=mysqli_fetch_assoc($abfrage);
echo $zeile['zahl'];
 
mit einem

var_dump( $object );

kann man sich alles ausgeben lassen (d.h. man erfährt die Struktur des "$objects" !

Somit hättest du herausgefunden, das in $abfrage der Type RESOURCE drin steht, in $zeile der Type ARRAY und wie diese beiden aufgebaut sind.

Einfach mal ausprobieren und merken für die Zukunft.
Ist immer ein Mittel zum debuggen!