Avatar billede d3c Nybegynder
08. november 2006 - 14:34 Der er 8 kommentarer og
2 løsninger

Limit eller ej på queries

Hej folk,

Hvad er hurtigst?

"SELECT username FROM users WHERE id='$id' LIMIT 0,1"

eller:

"SELECT username FROM users WHERE id='$id'"

Mvh,
Christian
Avatar billede d3c Nybegynder
08. november 2006 - 14:35 #1
eller:

"SELECT username FROM users WHERE id='$id' LIMIT 1"
Avatar billede udvikler Nybegynder
08. november 2006 - 15:31 #2
Prøv at bruge denne til at udskrive genereringstid for begge sql - hver for sig selvfølgelig?

<?php
function getmicrotime()
    {
      list($usec, $sec) = explode(" ",microtime());
      return ((float)$usec + (float)$sec);
    }

$start = getmicrotime();
$end = getmicrotime();
$time = $end - $start;
$time = substr($time,0,6);
?>
genereringstid: <b><?=$time?></b> sekunder
Avatar billede arne_v Ekspert
08. november 2006 - 16:03 #3
Jeg kan ikke tro at der er nogen målbar forskel. Jeg har ikke testet. Men det
lyder da ulogisk hvis der skulle være det.
Avatar billede d3c Nybegynder
08. november 2006 - 16:32 #4
arne_v: Det var mere for at om det var mere korrekt at bruge LIMIT efter rows, hvor man ved der kun eksisterer én. Og i så fald hvilken slags LIMIT. Her er min lille test med 6 forespørgsler af hver på et eksisterende brugernavn på 5 tegn.

Intet limit:
0.002742
0.001657
0.00447
0.002624
0.005188
0.003825
Snit: 0,00342

LIMIT 1:
0.004291
0.005186
0.003363
0.004154
0.001692
0.004656
Snit: 0,00389

LIMIT 0,1:
0.00334
0.00187
0.001672
0.001793
0.142807
0.004713
Snit: 0,02603
Avatar billede d3c Nybegynder
08. november 2006 - 16:32 #5
for at høre*
Avatar billede d3c Nybegynder
08. november 2006 - 16:33 #6
Desuden: bør man anvende et LIMIT på 0,1 når man indsætter og sletter?
Avatar billede udvikler Nybegynder
08. november 2006 - 16:42 #7
16:32:13 -> Det er ikke mere korrekt at bruge limit bare fordi du ved at der kun findes en. Du kan dog gøre det for at være sikker på at den ikke spytter andet ud, selvom det efter min mening er overkill.

16:33:52 -> Nej det behøves ikke.
Avatar billede d3c Nybegynder
08. november 2006 - 16:45 #8
Ok, det er fjernet igen fra mine scripts. Smid et svar begge to.
Avatar billede udvikler Nybegynder
08. november 2006 - 16:46 #9
:-)
Avatar billede arne_v Ekspert
09. november 2006 - 01:03 #10
ok
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
Computerworld tilbyder specialiserede kurser i database-management

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