Avatar billede nielsbrinch Nybegynder
18. december 2002 - 22:43 Der er 2 kommentarer og
1 løsning

Ønskes én stor og flot SELECT

Sådan ser mine tabeller ud (renset for irrelevante kolonner):

Server:
serverID (primærnøgle, int)
... m.m.

Booking:
bookingID (primærnøgle, int)
serverID (fremmednøgle, int)
startTime (long)
endTime (long)

Når jeg skal indsætte en ny booking, vil jeg have at den ikke løber sammen med nogle af de andre bookinger der er i forvejen. Der må gerne være samme bookingtid, bare det ikke er på samme server. Derfor vil jeg have en SELECT der giver mig listen over alle de serverID'er der er fri på en given tidsperiode, angivet med to long's.

Skriv endelig hvis der er noget jeg skal uddybe - kan godt være der er noget jeg har glemt at sige :-)
Avatar billede dsj Nybegynder
18. december 2002 - 23:23 #1
SELECT serverID
FROM Server AS s, Booking AS b
WHERE b.serverID = s.serverID
AND (startTime > indtastetEnd)
OR (endTime < indtastetStart)
;

Paranterserne er med for læsbarhedens skyld, men kan udelades.
Avatar billede dsj Nybegynder
18. december 2002 - 23:52 #2
Første linie med 'i', kan du sige 'i' ??, skal nok erstattes med:

SELECT s.serverID
Avatar billede nielsbrinch Nybegynder
19. december 2002 - 00:40 #3
tak :D
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