Avatar billede torotune Nybegynder
06. juni 2007 - 23:13 Der er 4 kommentarer og
1 løsning

Finde dage til/efter fødselsdag

Hej,

Jeg bøvler lidt med en SQL-sætning hvor der skal findes de personer hvor der er 7 dage mellem i dag og deres fødselsdag.

Jeg har lavet:

SELECT Navn, FodselsDato FROM Personer
WHERE DATEDIFF("d", FodselsDato, Date()) = 7

Men denne virker jo kun hvis personens fødselsår er 2007.
Hvordan kan jeg i Access-sql evt. konvertere FodselsDato og Date()'s årstal til det samme?

Mvh.
Avatar billede fdata Forsker
06. juni 2007 - 23:31 #1
Brug DateSerial:
DateDiff("d", DateSerial(2000, Month(d1), Day(d1)), DateSerial(2000, Month(d2), Day(d2)))
Avatar billede torotune Nybegynder
06. juni 2007 - 23:41 #2
Rigtig smart! Det virker :-) Hvis jeg lige må spørge om en ting til:

Hvis fødselsdatoen FodselsDato skal hentes fra en række med CPR-numre i tekstformat, prøver jeg med

SELECT Mid(CPR,1,6) AS FodselsDato FROM Personer

som så retunerer eksempelvist 060678 - hvordan kan jeg i samme sætning som ovenstående formatere dette til gyldigt datoformat?
Avatar billede fdata Forsker
07. juni 2007 - 21:22 #3
Ved at kombinere de to:
DateDiff("d", DateSerial(2000, Mid(CPR,3,2), Left(CPR,2)), DateSerial(2000, Month(d2), Day(d2)))
Access kan sagtens selv konvertere fra strenge til tal.
Avatar billede torotune Nybegynder
16. juni 2007 - 18:43 #4
OKay, jeg siger mange tak og fandt ud af det! :-)
Avatar billede fdata Forsker
16. juni 2007 - 22:00 #5
Velbekomme. Takker for point  ;o)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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