Først og fremmest genererer alle en tilfældig værdi fra 1 til MAX(id), ikke 100000000.
Så er der i hvert fald et par gode løsninger:
-
Brug
>
ikke=
SELECT items FROM tablea where status='0' and id>'$id23' LIMIT 1
Opret et indeks på
(status,id,items)
for at gøre dette til en indeksforespørgsel. -
Brug
=
, men prøv bare igen med en anden tilfældig værdi, hvis du ikke finder et hit. Nogle gange vil det tage flere forsøg, men ofte vil det kun tage et forsøg.=
bør være hurtigere, da den kan bruge den primære nøgle. Og hvis det er hurtigere og får det i et forsøg 90 % af tiden, kan det kompensere for de andre 10 % af tiden, når det tager mere end et forsøg. Afhænger af hvor mange huller du har i dine id-værdier.