How can I get the records from a db where created date is today's date?
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest] FROM [dbo].[EXTRANET_users] WHERE DATE(Submission_date) = DATE(NOW())
This doesn't work im using sql server 2000 and submission date is a date time field
To get the current date and time in SQL Server, use the GETDATE() function. This function returns a datetime data type; in other words, it contains both the date and the time, e.g. 2019-08-20 10:22:34 .
SQL Server provides several different functions that return the current date time including: GETDATE(), SYSDATETIME(), and CURRENT_TIMESTAMP.
Looks like you're using SQL Server, in which case GETDATE()
or current_timestamp
may help you. But you will have to ensure that the format of the date with which you are comparing the system dates matches (timezone, granularity etc.)
e.g.
where convert(varchar(10), submission_date, 102) = convert(varchar(10), getdate(), 102)
Can you try this?
SELECT [Title], [Firstname], [Surname], [Company_name], [Interest] FROM [dbo].[EXTRANET_users] WHERE CAST(Submission_date AS DATE) = CAST(GETDATE() AS DATE)
T-SQL doesn't really have the "implied" casting like C# does - you need to explicitly use CAST
(or CONVERT
).
Also, use GETDATE()
or CURRENT_TIMESTAMP
to get the "now" date and time.
Update: since you're working against SQL Server 2000 - none of those approaches so far work. Try this instead:
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()))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With