A anno Medlem sedan nov. 2000 213 inlägg Frågan 15 aug. 2001 12:24 #1 Jag vill visa alla poster mellan måndag till söndag, den aktuella vecka det gäller, den ska alltså vara dynamisk så att det blir olika poster beroende mellan vilka datum det här.
Tänkte mig något i den här stilen:
strSQL = "SELECT * FROM tabell WHERE dtm > '" & dtmFörstiveckan & "' AND dtm < '" & dtmSistiveckan & "' ORDER by dtm desc"
Hur får man ut dessa datum?
L LarsG Medlem sedan dec. 2000 12 464 inlägg Man kan göra det lite olika beroende på vilken databas man använder. T.ex. i Access så kan du använda en selectsats som den här
select * from tabell
where datepart("ww",dtm) = datepart("ww",date)
and year(dtm) = year(date)
Funktionsanropet datepart("ww",dtm) returnerar veckonummer för värdet i kolumnen dtm.
A anno Medlem sedan nov. 2000 213 inlägg Med lite hjälp från dig LarsG och lite annat letande blev det så här till slut:
datum = date()
vecka = datepart("ww",datum)
ar = year(datum)
Dato= ar &"-01-01"
Do Until DatePart("ww", Dato, 2, 2) = vecka
Dato = DateAdd("d", 1, Dato)
Loop
strSQL = "SELECT * FROM tblLogg WHERE dtmDay > '" & DateAdd("d", -1, Dato) & "' AND dtmDay < '" & DateAdd("d", 6, Dato) & "' ORDER by dtm desc"
Vet inte om det är bästa lösningen men det verkar fungera...
E emission Medlem sedan dec. 1999 6 721 inlägg Det gör den säkert, men LarsGs variant är ungefär 1267 gånger effektivare.... :)
A anno Medlem sedan nov. 2000 213 inlägg Givetvis är LarsG:s lösningar alltid effektivast ;)