"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Pourquoi est-ce que je reçois uniquement les données des cinq derniers jours alors que ma requête demande spécifiquement les sept derniers ?

Pourquoi est-ce que je reçois uniquement les données des cinq derniers jours alors que ma requête demande spécifiquement les sept derniers ?

Publié le 2024-11-16
Parcourir:479

Why am I only getting data from the last five days when my query specifically asks for the last seven?

Récupération de l'efficacité des données des 7 derniers jours

Lors du transfert de données de SQL Server vers MySQL, il est essentiel de filtrer uniquement les données pertinentes. Dans ce cas, l'extraction des données des sept derniers jours est cruciale. Cependant, une requête SQL fournie a donné des résultats inattendus.

Problème : données manquantes

La requête, qui utilisait GETDATE()-7 AND GETDATE() pour filtrer les données, n'a récupéré que cinq jours de résultats. Cet écart nécessite une exploration.

Solution : calcul correct de la date

Pour SQL Server, GETDATE() renvoie la date et l'heure actuelles. Cependant, le calcul il y a sept jours nécessite un ajustement pour tenir compte des fuseaux horaires et de l’heure d’été. Pour résoudre ce problème, DATEADD(day,-7, GETDATE()) est utilisé. DATEADD() ajoute un nombre de jours spécifié (dans ce cas, -7) à la date actuelle, garantissant ainsi une récupération précise des données jusqu'aux sept derniers jours complets.

Par conséquent, la requête corrigée doit être :

SELECT id, NewsHeadline as news_headline, NewsText as news_text, state CreatedDate as created_on
FROM News
WHERE CreatedDate >= DATEADD(day,-7, GETDATE())

Cette requête modifiée capturera efficacement les sept jours de données souhaités et résoudra l'écart rencontré plus tôt.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3