SQL - Bonne clause “where” pour le mois en cours

Qui est la bonne façon de vérifier les événements du mois en cours sur SQL Server et pourquoi?

1) WHERE (DATEDIFF(month, EventTime, GETDATE())=0))

2) WHERE (YEAR(EventTime) = YEAR(GETDATE()) AND MONTH(EventTime) = MONTH(GETDATE()))

Format de Date dans la table c'est à dire EventTime: 2011-11-30 15:68:25.000

  • Remarque : Les Types de Données DATETIME, etc, n'ont pas des formats tels que. C'est juste que le format utilisé pour les représenter à l'écran, comme nous, les humains n'aiment pas la lecture binaire, etc. Si, toutefois, ils sont en fait stockées dans la table des chaînes de caractères (type NVARCHAR, etc), le format est important, et ce sera frappé les performances de mal.
  • ah, non, c'est un format datetime, pas de type varchar, pas de soucis 🙂
InformationsquelleAutor yosh | 2011-11-30