Comment puis-je obtenir les enregistrements d'une base de données où la date de création est la date du jour?
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest]
FROM [dbo].[EXTRANET_users]
WHERE DATE(Submission_date) = DATE(NOW())
Cela ne fonctionne pas avec SQL Server 2000 et la date de soumission est un champ de date et heure
On dirait que vous utilisez SQL Server, auquel cas GETDATE()
ou current_timestamp
peut vous aider. Mais vous devrez vous assurer que le format de la date avec laquelle vous comparez les dates système correspond (fuseau horaire, granularité, etc.).
par exemple.
where convert(varchar(10), submission_date, 102)
= convert(varchar(10), getdate(), 102)
Pouvez-vous essayer cela?
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest]
FROM [dbo].[EXTRANET_users]
WHERE CAST(Submission_date AS DATE) = CAST(GETDATE() AS DATE)
T-SQL n'a pas vraiment la conversion "implicite" comme C #, vous devez utiliser explicitement CAST
(ou CONVERT
).
Utilisez également GETDATE()
ou CURRENT_TIMESTAMP
pour obtenir la date et l’heure «maintenant».
Mise à jour: puisque vous travaillez contre SQL Server 2000 - aucune de ces approches ne fonctionne jusqu'à présent. Essayez ceci à la place:
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest]
FROM [dbo].[EXTRANET_users]
WHERE DATEADD(dd, 0, DATEDIFF(dd, 0, submission_date)) = DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))
Il pourrait y avoir un autre moyen, mais cela devrait marcher:
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest]
FROM [dbo].[EXTRANET]
WHERE day(Submission_date)=day(now) and
month(Submission_date)=month(now)
and year(Submission_date)=year(now)
Une solution facile consiste à utiliser une condition comme celle-ci (utilisez la date souhaitée> GETDATE () - 1)
votre instruction SQL "date spécifique"> GETDATE () - 1