Avatar billede bachome Nybegynder
15. november 2005 - 20:53 Der er 8 kommentarer og
1 løsning

Sql Select HJÆLP

Jeg har en database med navn, adresse og fødselsdag (ÅÅÅÅ-MM-DD).

Hvordan laver jeg en select-sætning der henter den næste person fra databasen som har fødselsdag?
(Data'en på persone skal vælger udfra idag, NOW() )
Avatar billede cwboy Nybegynder
15. november 2005 - 20:58 #1
SELECT * FROM tabelnavn WHERE birthday >= NOW() ORDER BY birthday LIMIT 1
Avatar billede cwboy Nybegynder
15. november 2005 - 20:59 #2
den skal nok lige tunes lidt, da den ikke vil skrive den der har fødselsdag idag (hvis den da skal det :))
Avatar billede bachome Nybegynder
15. november 2005 - 21:02 #3
...den har jeg prøver. Men hvis der ikke er flere i db'en der har fødselsdag i år, giver det intet resultat!!!
Har du et andet bud?
Avatar billede cwboy Nybegynder
15. november 2005 - 21:24 #4
Det er desværre MS SQL jeg er mest inde i, så jeg kender ikke de specielle funktioner, MySQL tilbyder...

Du skal nok have fat i en af MySQL hajerne herinde :/

Hvad jeg umiddelbart kan se, skal den ændres, så den kun sammenligner på dag+måned, og udelader året... hvis den så ikke finder nogen, skal den finde den første i året.
Avatar billede bachome Nybegynder
15. november 2005 - 21:26 #5
ja, netop, men det er ikke så let!
Avatar billede arne_v Ekspert
15. november 2005 - 23:40 #6
SELECT navn
FROM xxxx
WHERE DAYOFYEAR(fødselsdag) >= DAYOFYEAR(NOW())
ORDER BY DAYOFYEAR(fødselsdag)-DAYOFYEAR(NOW()) ASC
LIMIT 1

måske
Avatar billede arne_v Ekspert
19. november 2005 - 00:23 #7
et svar hvis det virker
Avatar billede bachome Nybegynder
19. november 2005 - 17:02 #8
Hej Arne v. Det virker ikke hvis den næste hærst har fødelsdag i det nye år. jeg har selv fundet denne løsning:
SELECT firstname,
            lastname,
            CONCAT(((RIGHT(dateofbirth,5) < RIGHT(CURRENT_DATE,5)) + YEAR(CURRENT_DATE)),
            RIGHT(dateofbirth,6)) AS nextBirthday
FROM addressBook
ORDER BY nextBirthday ASC LIMIT 1
Avatar billede bachome Nybegynder
19. november 2005 - 17:02 #9
jeg lukker hermed spørgsmålet.
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