php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.02.2005, 18:44  
Benutzer
 
Registriert seit: 16.10.2004
Beiträge: 90
freitz
Standard count(*)

hallo,

ist
PHP-Code:
SELECT [b]COUNT(*)[/bFROM table 
die einige möglichkeit rauszukriegen, wie viele Zeilen in einer DB-Tabelle sind?
freitz ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 16.02.2005, 18:59  
Gast
 
Beiträge: n/a
Standard

Nein, das ist nicht die einzige Möglichkeit, aber die Beste.

Gruß
phpfan
  Mit Zitat antworten
Alt 16.02.2005, 19:14  
Benutzer
 
Registriert seit: 16.10.2004
Beiträge: 90
freitz
Standard

hmm aber irgendwie klappts net so wie ich wollte:

PHP-Code:
<?php

$anzahl
=mysql_query("SELECT COUNT(*) FROM news");
echo 
$anzahl;

?>
Ausgegeben wird dann das:
Code:
Resource id #8
freitz ist offline   Mit Zitat antworten
Alt 16.02.2005, 19:24  
Gast
 
Beiträge: n/a
Standard

Tja, mit einem Blick in die Doku würde man weiterkommen. mysql_query liefert nun mal eine Resource-Id. Mit dieser ID kann man dann die Ergebnisse mit Hilfe von mysql_fetch_array, mysql_fetch_object oder mysql_result abholen.

http://de2.php.net/manual/de/functio...etch-array.php
http://de2.php.net/manual/de/functio...tch-objext.php
http://de2.php.net/manual/de/function.mysql-result.php

In diesem Fall ist mysql_result die richtige Wahl.

Gruß
phpfan
  Mit Zitat antworten
Alt 16.02.2005, 19:46  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

PHP-Code:
<?php 

$anzahl
=mysql_query("SELECT COUNT(*) FROM news"); 
$row mysql_fetch_assoc($anzahl);
echo 
$row["COUNT(*)"];

//oder
$anzahl=mysql_query("SELECT * FROM news"); 
echo 
mysql_num_rows($anzahl);
?>
Buhmann ist offline   Mit Zitat antworten
Alt 16.02.2005, 19:49  
Gast
 
Beiträge: n/a
Standard

NEIN!

Die zweite Variante ist das Schlimmste, was man machen kann. Da wird eine komplette Tabelle völlig sinnlos selektiert, sowas macht man einfach nicht.

16.14. Warum soll ich nicht SELECT * schreiben?
http://www.php-faq.de/q/q-sql-select.html

Gruß
phpfan
  Mit Zitat antworten
Alt 16.02.2005, 20:01  
Erfahrener Benutzer
 
Registriert seit: 08.06.2004
Beiträge: 865
RudiS
Standard

Also ich mach das so:
PHP-Code:
<?php
  $sql 
"SELECT
               COUNT(*) AS count
             FROM
               tabelle
            "
;
  
$result mysql_query($sql);
  
$row mysql_fetch_assoc($result);
  echo 
$row['count'];
 
?>
Könnte man natürlich noch kürzer schreiben, aber dann ist es nicht mehr so übersichtlich.
mfg RudiS

PS: Wenn es eine bessere/schnellere Möglichkeit gibt, dann bitte sagen; würde mich sehr interessieren.
__________________
Kunst kommt von Können und nicht von wollen, denn sonst würde es ja Wunst heißen.
RudiS ist offline   Mit Zitat antworten
Alt 16.02.2005, 21:22  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von phpfan
NEIN!

Die zweite Variante ist das Schlimmste, was man machen kann. Da wird eine komplette Tabelle völlig sinnlos selektiert, sowas macht man einfach nicht.

16.14. Warum soll ich nicht SELECT * schreiben?
http://www.php-faq.de/q/q-sql-select.html

Gruß
phpfan
ehätetetetetetete *meckermeckermecker*
dass die sinnlos ausgelesen wird ist mir auch klar, aber woher sollte ich denn einen der spaltennamen von ihm wissen, und schließlich wollte er eine alternative haben.....
Buhmann ist offline   Mit Zitat antworten
Alt 16.02.2005, 21:28  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Buhmann
ehätetetetetetete *meckermeckermecker*
dass die sinnlos ausgelesen wird ist mir auch klar, aber woher sollte ich denn einen der spaltennamen von ihm wissen, und schließlich wollte er eine alternative haben.....
Bevor ich so einen Käse schreibe, schreibe ich besser garnichts. Das leidige Thema "Select *" sieht man hier in jedem zweiten Script, und wenn man das auch noch als Antwort bekommt, kriegt man diesen Mist nie aus den Köpfen der Leute. Und sorry, wenn ich solche Sachen "anmeckere", aber das ist immer noch besser, als das kommentarlos stehen zu lassen!

Gruß
phpfan
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
select count(*) resource id #8, count( * ) php net, php mysql_query resource id # count(*)

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:15 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.