comment obtenir les enregistrements de la journée précédente à l'aide de tsql?
J'ai besoin de tous les enregistrements de la dernière journée?
Hi
Select * from table1 where tabledate > getdate() -1
avec cette requête, j'ai besoin d'exécuter est exactement après minuit pour obtenir des résultats exacts. J'ai besoin de l'exécuter dans la journée et d'obtenir toutes la journée précédente dossiers.
OriginalL'auteur User13839404 | 2012-02-14
Vous devez vous connecter pour publier un commentaire.
Dans SQL Server 2005, ce qui est généralement le moyen le plus rapide pour convertir un datetime date:
Dans votre cas, c'est fait en une seule fois, donc, le comment n'a pas vraiment beaucoup d'importance. Mais il donne la requête suivante.
OriginalL'auteur MatBailie
Consulter cette page. C'est une excellente ressource pour le calcul des dates.
http://www.simple-talk.com/sql/learn-sql-server/robyn-pages-sql-server-datetime-workbench/#calculatingdates
OriginalL'auteur Ashwin Chandran
Une autre méthode consiste à utiliser
DATEDIFF
seul:Un datediff de 1 par jour couvre tout moment de la journée précédente.
tabledate
champ est indexé, cette version pas être en mesure d'utiliser une recherche de plage sur l'index. Au lieu de cela, il aura besoin de scan l'ensemble de l'indice de calcul de la DATEDIFF() sur chaque valeur unique. C'est parce que le champ de recherche est maintenant caché à l'intérieur de votre appel de fonction. L'alternative est un peu plus long, mais conserve tous les appels de fonction sur des constantes, et permet ainsi à la beaucoup plus rapide rechercher.En effet, la touche. +1
OriginalL'auteur Bort
OriginalL'auteur Aaron Bertrand
Essayez ceci:
OriginalL'auteur jamie