Jag är inte så van vid att använda olika typer av queries i sql så därför blir det lite fel då och då.... som nu:
Kod:
Find = "SELECT * FROM orders WHERE orderDate BETWEEN '" & Request.Form("from") & "' AND '" & Request.Form("to") & "'"
Fel:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
:)
LarsGMedlem sedan dec. 200012 464 inlägg För access 2000 och äldre versioner gäller
Find = "SELECT * FROM orders WHERE orderDate BETWEEN #" & Request.Form("from") & "# AND #" & Request.Form("to") & "#"
när man anger en datumliteral.
tackar för den men tyvärr (får man väl säga) så var felet att jag hade fel typ av fält i min databas. Ändrade den från tal till text så fungerade det
:)
Sedan har jag ett litet problem till, eller kanske inte tt problem utan snarare en fråga.
Jag kan nu visa alla rader som innehåller ett datum som är mellan det besökaren skrivit. Men, nu vill jag också kunna göra så här:
Ett script ska selecta alla raderna mellan det användaren bestämt (som nu) och sedan addera alla tal i en viss kolumm, så att man får ut, allmän info och det sammanlagda värdet av ihopalagda poster. Så här:
Namn: Bosse
Köpte: En traktor
Pris: 70000
Namn: Nisse
Köpte: Ett hus
Pris: 2000000
Totalt: 2070000
:)
Är det ingen som har några tips eller så?
LarsGMedlem sedan dec. 200012 464 inlägg Byt datatype till datetime för orderdate.
Hur vill du ha det om samma person har köpt flera (olika) saker?
Hur som helst så är det enklast att summera i VB-script då du går igenom alla poster.
q = "select * from t where orderdate between ... order by name"
set rs = connect.execute(q)
totper = 0.0
totall = 0.0
p = ""
while not rs.eof
if p<> "" and p <> rs("name") then
if totper <> 0.0 then response.write totper & "<br><br>"
p = rs("namn")
response.write p & "<br>"
totper = 0.0
end if
'övrig info
totall = totall + cdbl(rs("kostnad"))
totper = totperl + cdbl(rs("kostnad"))
rs.movenext
wend
if totper <> 0.0 then response.write totper & "<br><br>"
if totall <> 0.0 then response.write "Alla" & totper & "<br><br>"
du får frilla till det lite.