Forum > ASP > Generella frågor
ska jämföra ett datum i databasen med dagens och gårdagens datum... hur gör jag?
har hittils skrivit
ddate = 2008-01-21
If ddate = DateAdd("d", -1, Date()) Then
Response.Write "Det var igår.."
End If
kan inte det där med DateAdd och DateDiff ,,, har testat massa men får aldrig till det!
| Skriv utVill du att det ska vara ett krav i SQL raden? Denna SQL hämtar data som är en timme gammalt.
SELECT * FROM tabell WHERE datum < '" & DateAdd("h", -1, Now())&"'Med denna kod kan du kontrollera t.ex. hur många månader som det är mellan nu och ett visst datum. ddate är datumet från databasen, skillnaden får du i siffror och kommer att sparas i intDiff
intDiff= DateDiff("m", ddate, Date) Du kan byta ut m mot följande:
| yyyy | År |
| q | Kvartal |
| m | Månad |
| y | Dag på året |
| d | Dag |
| w | Veckodag |
| ww | Vecka på året |
| h | Timma |
| n | Minut |
| s | Sekund |
asså, jag gör precis som du skriver, fattar inte varför det inte funkar
... AND ddate = '"& DateDiff("d", -1, Now()) &"'")
det ska vara dagens datum - 1 dag eller hur?
och i databasen står det ddate på 2008-01-21 22:47:36 vilket är igår.
Select DateDiff("d",ddate,Date())
Case 0
Response.Write("Idag")
Case 1
Response.Write("Igår")
Case Else
Response.Write("Äldre än igår")
End Selectasså, ska förklara hur jag gör.
jag räknar downloads av en fil och ska skriva ut downloads igår och idag och det är den som räknar de downloads som var igår som inte fungerar.
Call GetCount(intDownloadsYesterday, "tb_downloads", " WHERE duid = "& CLng(strUserSessionID) &" AND ddate = '"& DateDiff("d", -1, Now()) &"'")det ska väl funka?
Det tycker jag.
har lagt till en post som är till den användaren jag är inloggad på och satt datumet på igår, men det står ändå 0...
Hmm, det låter konstigt. Du är säker på att du har rätt datum i databasen?
Använder du MySQL? Då finns det bra datum funktioner inbyggda.
använder mysql, datumet skrivs ut såhär ifrån db: 2008-01-21