Avatar billede guffas Nybegynder
17. februar 2004 - 15:27 Der er 6 kommentarer og
3 løsninger

Vælge records med dag/nat ud fra et time/date felt

Jeg har brug for hjælp til en SQL forespørgsel i Access hvor jeg kan finde poster med besøgstid på tværs af datoer.
Jeg har et felt der hedder VisitTime der er af Date/Time datatypen.
Koden der ikke virker ser sådan ud:
...
Case "NIGHT"
  SQL = "SELECT TOP 25 * FROM Visit WHERE [VisitTime] BETWEEN #18:00# AND #06:00#"
Case "DAY"
  SQL = "SELECT TOP 25 * FROM Visit WHERE [VisitTime] BETWEEN #06:00# AND #18:00#"
...
Avatar billede terry Ekspert
17. februar 2004 - 15:45 #1
It will be necessary to use a date then, otherwise you cant!
Avatar billede terry Ekspert
17. februar 2004 - 15:48 #2
If it is the current date then

Case "NIGHT"
  SQL = "SELECT TOP 25 * FROM Visit WHERE [VisitTime] BETWEEN #" & Format(date, "yyyy-mm-dd") & " 18:00# AND #"  & Format(date+1, "yyyy-mm-dd") & " 06:00#"
Case "DAY"
  SQL = "SELECT TOP 25 * FROM Visit WHERE [VisitTime] BETWEEN #06:00# AND #18:00#"
Avatar billede guffas Nybegynder
17. februar 2004 - 15:52 #3
Hej Terry
Da jeg vil se på tidspunktet på dagen uafhængigt af dato over en meget lang periode går det ikke.
Jeg håbede på at der eksisterede en filter funktion der udlukkende kikkede på tidspunkt og ikke dato.
Hvis ikke, er der ingen anden udvej end at opdele feltet i 2, således at jeg har dato for sig og tidspunkt for sig.
17. februar 2004 - 15:52 #4
eller bare:
Case "NIGHT"
  SQL = "SELECT TOP 25 * FROM Visit WHERE [VisitTime] > #18:00# or [VisitTime] < #06:00#"
17. februar 2004 - 15:53 #5
Eller måske:
SQL = "SELECT TOP 25 * FROM Visit WHERE hour([VisitTime]) > 18 or hour([VisitTime]) < 6"
17. februar 2004 - 15:56 #6
Case "NIGHT"
  SQL = "SELECT TOP 25 * FROM Visit WHERE hour([VisitTime]) >= 18 or hour([VisitTime]) < 6"
Case "DAY"
  SQL = "SELECT TOP 25 * FROM Visit WHERE hour([VisitTime]) BETWEEN 6 and 18
Avatar billede guffas Nybegynder
17. februar 2004 - 15:59 #7
Jeg prøver det lige af...
Avatar billede guffas Nybegynder
17. februar 2004 - 16:04 #8
Det virker !
Så min formodning var god nok, der fandtes et filter og det hedder endda noget så simplet som Hour()
Tak for hjælpen
17. februar 2004 - 16:06 #9
anytime :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