08. december 2003 - 00:44Der er
4 kommentarer og 1 løsning
Valg af flere vilkårlige rækker fra samme tabel
hej,
Jeg har brug for at vælge 1 kendt række og 2 vilkårlige rækker fra samme tabel. Jeg har fundet ud af at 2 vilkårlige rækker kan jeg vælge på flg. måde:
SELECT ID FROM tabel ORDER BY RAND() LIMIT 0,2
Mit problem er at jeg skal vælge en række hvor jeg kender ID og 2 yderligere rækker som skal være vilkårlige og ikke den samme som den kendte række.
Jeg kan selvfølgelig lave flere SQL statements, men det vil være meget nemmere med et SQL, hvor jeg så kan gå igennem de 3 fundne rækker.
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Hvis din MySQL er min. ver. 4.0 kan du bruge union, men du risikerer jo at en af de tilfældige rækker er den samme som den valgte, derfor er du nødt til at bruge union all:
(SELECT * FROM tabel ORDER BY RAND() LIMIT 0,2) UNION ALL(SELECT * FROM tabel WHERE id = 3);
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.