Avatar billede palito Nybegynder
02. november 2007 - 08:54 Der er 11 kommentarer

Tæl antal rækker i tabel

Hvordan tæller jeg antal rækker i databasen - uden at trække noget som helst indhold ud.

Noget med COUNT() :)
Avatar billede nielle Nybegynder
02. november 2007 - 09:07 #1
SELECT count(*) AS antal FROM dinTabel
Avatar billede jakobdo Ekspert
02. november 2007 - 09:35 #2
Og det bør vel som sådan være:

SELECT count(FELTNAVN) AS antal FROM dinTabel :o)
Avatar billede palito Nybegynder
02. november 2007 - 11:14 #3
Men hvilket feltnavn skal det så være? Er det ligegyldigt?

Og hvordan skal det se ud med PHP?

echo mysql_query("SELECT count(FELTNAVN) AS antal FROM dinTabel");

?
Avatar billede showsource Seniormester
02. november 2007 - 11:31 #4
echo mysql_result(mysql_query("SELECT count(FELTNAVN) FROM dinTabel"), 0);
Avatar billede nielle Nybegynder
02. november 2007 - 11:41 #5
Det er muligt at der er en bestemt grund til at man bør vælge et felt navn. Desværre kan jeg ikke lige fortælle hvad den i så fald er?

Jeg ved dog at 02/11-2007 09:07:44 virker:

$sql = "SELECT count(*) AS antal FROM dinTabel";
$query = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($query);
echo "Antal rækker: " . $row["antal"];
Avatar billede jakobdo Ekspert
02. november 2007 - 19:08 #6
Pudsigt, jeg troede faktisk COUNT(id) vs COUNT(*) var hurtigere.
Ligesom SELECT * FROM vs SELECT id, navn FROM

http://www.codebreaker.dk/exp/803992exp.php
Avatar billede nielle Nybegynder
02. november 2007 - 19:33 #7
I mine egne tests er der ikke den store forskel. Jeg kan nu heller ikke nogen speciel grund til at count(id) skulle performe bedre end count(*). Jeg gætter på at database-motoren selv formår at optimere det rimeligt ok.

Det er selvfølgelig noget helt andet med:

SELECT * FROM ...

vs.

SELECT id, navn FROM ...

Hvis altså tabellen indeholder *flere* søjler end netop 'id' og 'navn' - for ellers performer de to varianter vist lige godt.
Avatar billede jakobdo Ekspert
02. november 2007 - 19:42 #8
Ja, men jeg troede det var samme sag, så derfor min udmelding med count(FELTNAVN).
Men jeg må jo erkende jeg tog fejl og at man skal lære så længe man lever. :o)
Avatar billede nielle Nybegynder
06. november 2007 - 18:03 #9
Har du fået kigget på det?
Avatar billede nielle Nybegynder
12. november 2007 - 18:57 #10
??
Avatar billede nielle Nybegynder
19. november 2007 - 17:06 #11
Svar?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester