Gå til innhold

Hjelp med en mySQL-spørring


Anbefalte innlegg

Jeg har to forskjellige tabeller. En med nyheter, og en med bilder.

 

bilde

------

id, int

nyhet, int

osv...

 

nyhet, int er fremmed-id'en til nyhet.

 

og

 

nyhet

-----

id, int

osv..

 

Det kan være registrert flere bilder til en nyhet.

 

Det jeg vil gjøre er å hente 3 tilfeldige nyheter med kun et tilhørende bilde pr. nyhet som også helst skal hentes tilfeldig. Spørsmålet er kort og godt. Er dette mulig å gjøre med kun _en_ setning i mysql?

Lenke til kommentar
Videoannonse
Annonse

For å hente ut tre tilfeldige nyheter kan du bruke:

 

ORDER BY RAND() LIMIT 3;

 

Det enkleste (og kanskje det beste) er da å bruke nyhetenes id til å hente ut et tilfeldig bilde.

 

Hvis det ikke er så viktig at bilde er tilfeldig:

 

SELECT *
FROM nyhet, bilde
WHERE nyhet.id = bilde.nyhet
GROUP BY nyhet.id
ORDER BY RAND() LIMIT 3;

 

Er sikkert mulig å få tilfeldige bilder også. Med subqueries (som kan brukes i MySQL 4.1) hadde det vært enklere.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...