Avatar billede hestetoften Nybegynder
05. juni 2004 - 14:12 Der er 5 kommentarer og
1 løsning

Sql finde modeller between årstal

Jeg har en tabel med "Model, fraÅr, tilÅr"
model = modellens navn.
fraÅr = denne model fremstilles fra år.
tilÅr = denne model fremstilles til år.
Dataen består af:
model1, 1998, 2001
model2, 2000, 2003

jeg vil gerne lave en forespørgsel der siger:
Find alle modeller der blev fremstillet imellem år 1999 og 2001.

Altså både model1 og model2 blev fremstillet i denne periode, så derfor skal de begge med.

Men denne forespørgsel kan jeg ikke rigtigt regne ud.

Er der en der har et forslag.?
Avatar billede hekla Nybegynder
05. juni 2004 - 14:35 #1
Lav en forespørgsel med felterne Model, fraÅr og tilÅr. I forespørgslens designvisning skal du i fraÅr's krieterielinie skrive >=1999 og i tilÅr's kriterielinie skrive <= 2001.
Avatar billede hekla Nybegynder
05. juni 2004 - 14:46 #2
Eller hvis du vil have en formular, hvor du vælger fraÅr og tilÅr skal du under kriterierne skrive hhv: =[Forms]![MinFormular]![MitFraÅrfelt] og =[Forms]![MinFormular]![MittilÅrFelt]

"MinFormular" udskiftes med navnet på din formular og
"MitFraÅrFelt" og "MitTilÅrFelt" udskiftes med hhv. navnet på feltet på formularen, hvor du har din "fra-værdi" og din "til-værdi"
Avatar billede hekla Nybegynder
05. juni 2004 - 14:54 #3
Eller hvis du vil have det i SQL:
SELECT Model, fraÅr, tilÅr FROM MinModelTabel WHERE (([MinModelTabel]![FraÅr] >= 1999) AND (MinModelTabel]![tilÅr] <= 2001))

eller

SELECT Model, fraÅr, tilÅr FROM MinModelTabel WHERE (([MinModelTabel]![FraÅr] >= [Forms]![MinFormular]![MitfraÅrFelt]) AND (MinModelTabel]![tilÅr] <= [Forms]![MinFormular]![MittilÅrFelt]))
Avatar billede hestetoften Nybegynder
06. juni 2004 - 01:46 #4
Hvis jeg bruger denne:

SELECT Model, fraÅr, tilÅr FROM MinModelTabel WHERE (([MinModelTabel]![FraÅr] >= 1999) AND (MinModelTabel]![tilÅr] <= 2001))

kommer model1 ikke med, da FraÅr ikke er >= 1999
Avatar billede hestetoften Nybegynder
06. juni 2004 - 02:06 #5
Brugte denne og det ser ud til at virke

SELECT * from Tabel WHERE (FraÅr >= 1987 or (1987 Between [FraÅr] And [tilÅr])) and (tilÅr <= 1987 or (1987 Between [FraÅr] And [tilÅr]))
Avatar billede hestetoften Nybegynder
16. juni 2004 - 22:19 #6
Lukker
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