Korzystając z ASP classic, muszę jakoś porównać ze sobą dwie daty. Jak mogę to zrobić?Jak mogę porównać dwie daty w vbscript/ASP?
Odpowiedz
If Date1 > Date2 Then
' Date1 occurred after Date 2
End If
Zastosowanie >
, <
i =
jak numery porównywanie (i >=
, <=
i <>
zbyt). Mniejsze daty są bardziej historyczne.
To oczywiście zakłada, że Date1
i Date2
są w rzeczywistości obiektami Date lub DateTime. Jeśli tak nie jest, musisz przekonwertować je na obiekty Date, najpierw używając CDate()
.
Date1 = #rs["date"]#
Date2 = #12/1/2009#
If DateDiff("d", Date1, Date2) > 1 Then
response.write "This date is before 12/1/2009"
Else
response.write "This date is after 12/1/2009"
End If
HTH
Jakie są korzyści z używania 'DateDiff' zamiast bezpośredniego porównywania dat? –
Możesz wybrać różnicę, która jest znacząca (dni, miesiące, tygodnie). – Broam
+1 do odpowiedzi Broama, a także IMHO lepszym ćwiczeniem programistycznym jest porównywanie parametru, który można porównać na porównaniu "na ślepo". – Mikos
w VBScript, zawsze są warianty, jednak ISDATE() może być użyta do sprawdzenia, że wartości mogą być niejawnie oddanych jako daty - Często opłaca IMHO. – CJM