Avatar billede drnicebyte Nybegynder
15. maj 2002 - 16:29 Der er 19 kommentarer og
1 løsning

Hvordan sammenligne to datoer i Sql

Hvordan sammenligne 2 datoer hvor den ene datoen er i en tabell i access og den andre kommer fra en variabel i programmet.


sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn
FROM utlaan, data_inventar
WHERE in_dato >" + "'" + dagensdato + "'"

Dette er sql settningens som jeg har skrevet, men noe er galt. Variabelen dagensdato er av typen Date som er satt til dagens dato. in_dato er av typen dato i accessdb.
Avatar billede drnicebyte Nybegynder
15. maj 2002 - 16:31 #1
sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn" + _
" FROM utlaan, data_inventar " + _
" WHERE in_dato >" + "'" + dagensdato + "'"

Jeg vet at settningen skal se slikut hilsen Drnicebyte men problemet er som før
Avatar billede jakobandersen Nybegynder
15. maj 2002 - 16:31 #2
Har du overvejet at bruge GETDATE() istedet?

F.eks.:

sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn FROM utlaan, data_inventar WHERE in_dato > GETDATE()"
Avatar billede bennytordrup Nybegynder
15. maj 2002 - 16:31 #3
sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn
FROM utlaan, data_inventar
WHERE in_dato >" + "'" + format$(dagensdato, "yyyymmdd") + "'"
Avatar billede bennytordrup Nybegynder
15. maj 2002 - 16:32 #4
moonduck>  GetDate() er ikke god til sammenligning direkte med et datofelt, da den også indeholder tidspunkt helt ned til millisekund
Avatar billede drnicebyte Nybegynder
15. maj 2002 - 16:45 #5
Har prøvd GETDATE() : Den får feilmelding undefined function GETDATE in expression

Og har prøvd
"'" + format$(dagensdato, "yyyymmdd") + "'". Og får da data type mismatch in criteria expression
Avatar billede terry Ekspert
15. maj 2002 - 17:02 #6
Access, this in in SQL Server category!
Can you tell use where you are making the comparison, SQL Server or Access?
Avatar billede terry Ekspert
15. maj 2002 - 17:03 #7
sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn
FROM utlaan, data_inventar
WHERE in_dato > #" & Format(dagensdato, "yyyy-mm-dd") &  "#"
Avatar billede drnicebyte Nybegynder
15. maj 2002 - 17:31 #8
Hei igjen og takk for alle svarene. Jeg har kommet frem til denne sql:

Dim testdato As Date
testdato = Date

sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn, utlaan.utstyr_id, data_inventar.beskrivelse, utlaan.fra_dato, utlaan.forventet_in_dato, utlaan.laantaker_tlf, data_inventar.kat_id" + _
" FROM utlaan, ref_bruker, data_inventar WHERE utlaan.laantaker_id = ref_bruker.brk_id AND" + _
" utlaan.utstyr_id = data_inventar.id AND utlaan.til_dato IS NULL AND" + _
" forventet_in_dato <" + Format$(testdato, "ddmmyyyy")

Og denne passerer kompileringen men det er framdeles feil den skiller ikke ut de datoene som er mindre en dagens dato. Og hvis jeg snur tegnet > så finner den ingen poster i det hele tatt selv om det er poster som skulle blitt funnet.

   

   
   

   
    rsFinn.Open sql, deInventar.cnnInventar, , adLockOptimistic
Avatar billede drnicebyte Nybegynder
15. maj 2002 - 20:04 #9
Tx Sir tx 'a lot this was cool. TUSEN TAKK :-))
Avatar billede terry Ekspert
15. maj 2002 - 20:10 #10
.
Avatar billede terry Ekspert
15. maj 2002 - 21:41 #11
hi drnicebyte!
does this not count as an answer?
sql = "SELECT utlaan.laantaker_id, ref_bruker.brk_navn
FROM utlaan, data_inventar
WHERE in_dato > #" & Format(dagensdato, "yyyy-mm-dd") &  "#"
Avatar billede terry Ekspert
16. maj 2002 - 11:09 #12
thank you :o)
Avatar billede bennytordrup Nybegynder
16. maj 2002 - 11:12 #13
Tænk at få point for et spørgsmål, som ikke hører til i kategorien (det var Access, ikke) :-/
Avatar billede terry Ekspert
16. maj 2002 - 11:32 #14
benny>I would also prefer that they were under Access, better chance of catching Thomas :o)

Just noticed that I overtook you in SQL category, sorry about that, now I can understand your concern!

We can ask drnicebyte to take them back and move them to Access!
What do you think of that drnicebyte, I will give you 300 points back and you place a question  in Access for 300 points making a reference to both SQL questions?
Avatar billede bennytordrup Nybegynder
16. maj 2002 - 11:35 #15
terry> Are you english since almost all of your writing is in english?

At least, I do have some space to number 4 on the list :-), but a second place does look better ;-)
Avatar billede terry Ekspert
16. maj 2002 - 11:45 #16
Yes I am English. I can write quite good Danish but it just goes too slow and if I am to have a chnace I need all the help I can get:o)

Yes I can understand that a second place is better than third! I havent even been worrying about that though.
Well you will just have to try harder Benny :o))
Avatar billede bennytordrup Nybegynder
16. maj 2002 - 13:44 #17
Omkring points, så er der ikke nogen grund til at flytte dem til Access. Skaden er sket, for du ryger jo ikke de 300 points ned igen efterfølgende.

Problemet er dem, som accepterer et svar fra andre selv om der er gjort opmærksom på forkert kategori. Du gjorde allerede 15/05-2002 17:02:32 opmærksom på forkert kategori. Han burde have lukket og accepteret eget svar og oprettet i Access kategori med ref hertil.
Avatar billede terry Ekspert
16. maj 2002 - 13:53 #18
your right Benny.
Solution!
I place a question under SQL which you answer and I accept. Now your in front of me! Then you place a question in Access which I answer and you accept now I am 300 points closer to Thomas. What does Thomas think of that :o)
Avatar billede bennytordrup Nybegynder
16. maj 2002 - 13:55 #19
Fine with me
Avatar billede drnicebyte Nybegynder
16. maj 2002 - 14:59 #20
Hallo again all.
Mitt spørsmål ble til mange artige samtaller lol
Men det var ikke meningen og legge det i feil katergori.
Hvis det er noe jeg kan gjøre angående poengene , please si i fra.
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