Avatar billede benneharli Juniormester
30. august 2005 - 12:35 Der er 7 kommentarer og
1 løsning

SQL query

Jeg skal bruge et query der tager det første ledige nummer mellem 1 og * (en foruddefineret variabel) fra en tabel.

Har tænkt lidt på noget:
SQL = "SELECT IndividualId FROM IdWorksView";
--- og så kom jeg ikke længere ;-)

/Benji
Avatar billede benneharli Juniormester
30. august 2005 - 12:37 #1
$res = odbc_exec($conn,$sql);
    $item = odbc_fetch_array($res);
Avatar billede medions Nybegynder
30. august 2005 - 12:43 #2
SQL = "SELECT IndividualId FROM IdWorksView LIMIT 1 ORDER BY Rand()";
ellers er det
SQL = "SELECT IndividualId FROM IdWorksView LIMIT 1 ORDER BY Rnd()";

kan sq ikke rigtig huske det...

//>Rune
Avatar billede medions Nybegynder
30. august 2005 - 12:45 #3
Hov, forkert rækkefølge:
SQL = "SELECT IndividualId FROM IdWorksView ORDER BY Rand() LIMIT 1";

Den skulle gerne virke...

//>Rune
Avatar billede benneharli Juniormester
30. august 2005 - 13:09 #4
1: Hvad er limit 1?
2: Hvor definerer man at det skal være "1 =< *** <= $var"?

/benji
Avatar billede benneharli Juniormester
30. august 2005 - 13:15 #5
Husk lige at det ikke bare skal være et tilfældigt nummer, men det FØRSTE ledige nummer i rækken.

Jeg skal bruge hele PHP koden...
Avatar billede benneharli Juniormester
30. august 2005 - 14:07 #6
Jeg kunne forestille mig at man først laver et array af værdier i DB (se øverste indlæg "$item"), og derefter laver et array nogenlunde sådan her.

$span = array (for ($i=1; $i<=$maxindiv; $i++)
    {
    print_r "$i ";
    }
        );

Derefter tager med så fra $span de værdier der ikke er i $item, og vælger den laveste værdi.
Avatar billede benneharli Juniormester
30. august 2005 - 23:28 #7
Okay har fundet ud af hvad "ORDER BY Rand() LIMIT 1" er, og det er ikke lige det jeg går efter. Der skal ikke vælges en tilfældig fra tabellen, der skal vælges den første fra tabellen der IKKE er brugt... Altså:

Tabel: 1,2,3,5,6,7,9

--> Første ledige: 4
Avatar billede benneharli Juniormester
01. september 2005 - 16:22 #8
Det virker ikke som om der sker mere her... Prøver på en anden måde...
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