Avatar billede delphinarious Nybegynder
04. maj 2003 - 20:11 Der er 8 kommentarer og
1 løsning

Antal poster.

Hej.

PÅ min hjemmeside bruger jeg p.t. denne kode til at tælle poster i en mySQL-database:

$res = mysql_query("Select * From hits");

$hits = mysql_num_rows($res);

echo $hits;

Men da denne kode bliver afvinklet 4 gange hver gang siden bliver loaded (altså den tæller 4 forskellige tabeller) bliver siden undertiden noget langsom i optrækket.

Er der ikke en måde som serveren kan afvikle hurtigere??
Avatar billede ahv Nybegynder
04. maj 2003 - 20:17 #1
SELECT COUNT(*) AS antal FROM hits

Prøv om se om det ikke er lidt hurtigere.
Avatar billede jakoba Nybegynder
04. maj 2003 - 20:18 #2
$res = mysql_query("Select count(*) From hits");
$hits = mysql_result(0,0);

gar adskillige gange hurtigere

mvh JakobA
Avatar billede jakoba Nybegynder
04. maj 2003 - 20:20 #3
Ups. fejl i linie 2.
$res = mysql_query("Select count(*) From hits");
$hits = mysql_result($res,0,0);
Avatar billede olebole Juniormester
04. maj 2003 - 20:20 #4
<ole>

Spørgsmålet er, om ikke der findes en smartere metode, end at skulle foretage fire SQL-kald, hvergang siden kaldes ... men det har vi jo ikke kinamands chance for udtale os om udfra det foreliggende  :)

/mvh
</bole>
Avatar billede ahv Nybegynder
04. maj 2003 - 20:20 #5
$res = mysql_query("SELECT COUNT(*) AS antal FROM hits");
$row = mysql_fetch_array($res);

echo $row[antal]; // $row[antal]; indeholder antal hits
Avatar billede delphinarious Nybegynder
04. maj 2003 - 20:27 #6
>>> Jaboba >>> Jo, den går godt nok hurtigere, men det er et helt forkert tal jeg får frem. Hvad betyder de nuller?
Avatar billede jakoba Nybegynder
04. maj 2003 - 20:31 #7
nullerne står for: nummer 0 felt i nummer 0 række af resultatsættet
har du prøvet med rettelsen fra 04/05-2003 20:20:02
Avatar billede Slettet bruger
04. maj 2003 - 20:33 #8
Er der ikke noget med at SELECT COUNT(feltnavn) er hurtigere end COUNT(*)?
Avatar billede delphinarious Nybegynder
04. maj 2003 - 21:09 #9
jacoba >>> Nej, det var bare en tastefejl der gjorde at det var et forkert tal. *GG* Jeg tager dit svar for gode varer, for det satte virkeligt tempoet op. Tak for hjælpen.

Points til jacoba.
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