Avatar billede nederbasse Nybegynder
28. februar 2002 - 11:59 Der er 9 kommentarer og
3 løsninger

Kriterie i forspørgsel

Jeg vil ger kunne køre en forspørgsel fra en formular hvor men kan søge på måned OG år, sådan ser den ud nu:

SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE (((sqlPersonInfo.AnsatTil) Like "*" & "-" & [Måned] & "-" & "*"));

men den finder ingenting, hvis jeg skriver:
Like "*" & "-" & [Måned] & "*")); finder den måneden.
Hvordan lige...?
Lars
Avatar billede nih Novice
28. februar 2002 - 12:04 #1
dine felter AnsatTil og AnsatFra er det dato felter ????
28. februar 2002 - 12:05 #2
Jeg forstår ikke hvorfor du har wildcards med (*)?

Jeg ville skrive:
SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE month(sqlPersonInfo.AnsatTil) = " & [Måned]
28. februar 2002 - 12:07 #3
Der skal selvfølgelig ikke være " og &.
Sådan skal den se ud:
SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE month(sqlPersonInfo.AnsatTil) = [Måned]
28. februar 2002 - 12:10 #4
Hvis du yderligere vil have år med, kan du skrive noget a la dette:

SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE month(sqlPersonInfo.AnsatTil) = [Måned] And Year(sqlPersonInfo.AnsatTil) = [År]

Eller du skal slå det sammen i ét felt:
SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE month(sqlPersonInfo.AnsatTil) & "-" & Year(sqlPersonInfo.AnsatTil) = [Angiv måned-år]

Den sidste skal man så taste f.eks. 02-2002
Avatar billede nih Novice
28. februar 2002 - 12:11 #5
"WHERE (Month([ansattil]=" & me.måned & ") AND ((Year([ansattil])= " & me.år & ");"
Avatar billede nih Novice
28. februar 2002 - 12:13 #6
Hej Thomas ->

Jeg var begyndt at skrive svaret, så jeg postede det selvom jeg kunne se på mailen at du også rørte på dig. ;)

Niels
28. februar 2002 - 12:16 #7
Ja, jeg kender det! P....-irriterende at andre blander sig ;o)
Avatar billede nih Novice
28. februar 2002 - 12:19 #8
Så længe vi svarede ca. det samme er det vel ligemeget...
Avatar billede nederbasse Nybegynder
28. februar 2002 - 12:32 #9
Datatype AnsatTil Dato og klokkeslæt
Formatet er Mellemlangt dataoformat vises som 01. jul 02
Avatar billede nederbasse Nybegynder
28. februar 2002 - 12:35 #10
Denne her viser intet:
SELECT sqlPersonInfo.PersonId, sqlPersonInfo.Navn, sqlPersonInfo.InstitutId, sqlPersonInfo.AnsatFra, sqlPersonInfo.AnsatTil
FROM sqlPersonInfo
WHERE month(sqlPersonInfo.AnsatTil) & "-" & Year(sqlPersonInfo.AnsatTil) = [Angiv måned-år]

hvis kriterierne opgives som 03-02
Avatar billede jesperthomsen Nybegynder
28. februar 2002 - 12:41 #11
det er fordi year returnerer 4 cifrede årstal. Bed om fuldt årstal i indtastningsfeltet eller brug evt. format(sqlPersonInfo.AnsatTil, "yy") eller (sqlPersonInfo.AnsatTil, "åå") - afhængig af sprogversion.
Avatar billede nederbasse Nybegynder
28. februar 2002 - 13:22 #12
"Barnet" kom til at se sådan ud:
Like "*" & "-" & [Måned] & "-" & [År]));
og det virker :-)
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