Trots att det finns hits den senaste dagen lagrade i databasen så skrivs "Inga hits den senaste dagen " ut, variabeln antal har ju ett värde som är större än ett..varför kan det komma sig att if satsen inte fungerar...?:l
'## Hits idag ##'
SQL = "SELECT Datum,COUNT(*) AS antal FROM tblHits WHERE Day(Datum) = Day('" & Now() & "') GROUP BY Datum ORDER BY Datum"
Set RS = Conn.Execute(SQL)
IF antal < 1 THEN
Response.Write "<br>Inga hits senaste dagen<br>"
Else
Response.Write"<td><b><br>För idag, </td><td>" & WeekdayName(Weekday(Date)) & " är "& (RS("antal"))& "</b><br>"
End IF
Tack så länge..!
@ndersMedlem sedan juni 200032 969 inlägg Nix, variabeln antal har inte ett värde som är större än ett. Den har nämligen inget värde alls, eftersom du inte gett den ett värde.
SQL = "SELECT Datum,COUNT(*) AS antal FROM tblHits WHERE Day(Datum) = Day('" & Now() & "') GROUP BY Datum ORDER BY Datum"
Set RS = Conn.Execute(SQL)
[b]antal=Clng(RS("antal"))[/b]
IF antal < 1 THEN
Men, är du säker på att din SQL-fråga stämmer? Varför har du med Datum i SELECT-delen? Borde du inte också ha med månad och år i WHERE-satsen, så det inte bara duger med valfri 23:e?
Mvh,
Visst du har helt rätt...tänkte inte på det.. ;) Så nu har jag försökt få till det med en ny SQL fråga..
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE Tid = DatePart(hour,'"& Time &"') AND Datum ='"& FormatDateTime(Now,2)&"' GROUP BY PageID ORDER BY PageID"
Lagrar tiden i en kolumn som heter Tid och Datum i en kolumn som heter Datum och vill ju jämföra tiden nu med båda kolumnerna... tänker jag fel..
Typerna för Tid är nvarchar och för Datum DateTime.
Får följande felmeddelande..vid denna SQL frågan ovan..
Syntax error converting the nvarchar value '11:57:27' to a column of data type int.
Nexus86Medlem sedan okt. 20023 030 inlägg En stark gissning: DatePart är en ASP-funktion och inte en SQL-funktion. :)
R// Detta borde alltså fungera:
SQL = "SELECT PageID,COUNT(*) AS antal FROM tblHits WHERE Tid = " & Hour(Time) & " AND Datum = '" & FormatDateTime(Now, 2) & "' GROUP BY PageID ORDER BY PageID"
OK, tack.
Men nu har jag provat och tagit bort DatePart och provat din fråga men samma fel kvarstår...
Syntax error converting the nvarchar value '11:57:27' to a column of data type int.
Vad kan det bero på..?
//Karin
@ndersMedlem sedan juni 200032 969 inlägg
Typerna för Tid är nvarchar och för Datum DateTime.
Lagra datum och tid i datetimefält, annars kan du inte använda de datumfunktioner (till exempel DatePart) som finns.
mvh
Nexus86Medlem sedan okt. 20023 030 inlägg Bytte du även ut DatePart mot Hour som jag gjorde? Hur ser din SQL-sats ut nu?
R// Man kan ju såklart använda DatePart men jag finner det mycket enklare med Hour. :)
R2// Du skulle inte ha utan båda. Bara för att förtydliga. :)