Avatar billede trine_h Nybegynder
14. august 2005 - 19:32 Der er 1 kommentar og
1 løsning

en stored procedure med et random valg

Jeg har en tabel som ser således ud (og som holder styr på hvor mange værelser der er knyttet til et hus - obs der er flere huse):
houseRoomId int, roomId int , houseId int

og en anden tabel med bannere som er knyttet til et værelse:
bannerId int, bannerPic varchar, roomId int

mit problem er så, at jeg skal kunne hente et tilfældigt banner ud af banner tabellen men samtidig sikre at det hus som jeg arbejder ud fra har det pågældende værelse til at pege på sig som banneret bliver knyttet til.
Jeg kan derfor ikke bare vælge et tilfældigt banner - men skal på en eller anden måde sikre at ovenstående er opfyldt. Er der nogen som kan hjælpe??
Avatar billede venne Nybegynder
16. august 2005 - 12:38 #1
Altså: du har nogle huse. Hvert hus har nogle værelser tilknyttet. Hvert værelse har nogle bannere tilknyttet. Korrekt?
Du vil nu gerne have et tilfældigt banner hørende til et bestemt hus - korrekt?

Prøv noget i denne retning:

SELECT TOP 1 bannerId, bannerPic
FROM banner
INNER JOIN houseRoom ON banner.roomId = houseRoom.roomId
WHERE houseId = 123
ORDER BY NEWID()

Tricket ligger i sidste linie der sikrer en tilfældig ordning af rækkerne. Med TOP 1 bliver det så kun den første række der kommer ud.
Avatar billede trine_h Nybegynder
16. august 2005 - 12:40 #2
tak for svaret - newid kendte jeg ikke
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