mysql -> Datensätze zählen
depp
- datenbank
moin.
wie kann ich am einfachsten feststellen, ob eine tabelle einen (oder mehrere) datensätze auf die eine bedingung zutrifft hat?
also mit
SELECT...WHERE(...) abfrage und dem php befehl mysql_num_rows bekomme ich zumindest eine rückmeldung, wenn ein solcher datensatz existiert. gibt es keinen, so wird ein fehler erzeugt bzw gibt es keine rückmeldung. da das nicht sehr professionell ist, wüsste ich gerne, wie man das "richtig" macht.
danke
echo $begrüßung;
wie kann ich am einfachsten feststellen, ob eine tabelle einen (oder mehrere) datensätze auf die eine bedingung zutrifft hat?
SELECT COUNT(*) FROM table WHERE ...
Diese Abfrage liefert einen Datensatz mit einer Spalte in der die Anzahl steht zurück.
echo "$verabschiedung $name";
Moin!
wie kann ich am einfachsten feststellen, ob eine tabelle einen (oder mehrere) datensätze auf die eine bedingung zutrifft hat?
Man fragt die Datenbank und wertet deren Ergebnis aus.
also mit
SELECT...WHERE(...) abfrage und dem php befehl mysql_num_rows bekomme ich zumindest eine rückmeldung, wenn ein solcher datensatz existiert.
Die Datenbank gibt dir
gibt es keinen, so wird ein fehler erzeugt bzw gibt es keine rückmeldung.
Es gibt immer eine Rückmeldung, und es gibt, auch wenn kein Datensatz paßt, keine Fehlermeldung.
da das nicht sehr professionell ist, wüsste ich gerne, wie man das "richtig" macht.
Wenn du die Datensätze im gleichen Skriptlauf auch noch ausgeben/verarbeiten willst, arbeitest du mit der normalen SELECT-Abfrage und mysql_num_rows().
Wenn du wirklich nur die Anzahl wissen willst, fragst du "SELECT COUNT(*) as anzahl FROM tabelle WHERE deine_bedingung" und erhälst als einzige Datenbankergebniszeile eine mit der möglichen Anzahl von Datensätzen, verzichtest aber darauf, diese ganzen Datensätze aus der Datenbank zu übertragen und bei PHP in einem Pufferspeicher zwischenzulagern - das ist also ratsamer, wenn du die Datenmenge nachher sowieso ungenutzt wegwirfst.
- Sven Rautenberg