Saturday, September 13, 2014

Making Queries to Compare Dates in SQL Server

It's time to share a little tech knowledge!, when you are working with databases, SQL Server specifically, it's a good practice to keep in some tables records that could be used as auditing information, for this purpose you need to save date of the performed operation necessarily.

However, when the audit comes, you open your database to make a query against it but you think at that moment whether you should use <,>,= operators or you could write the date as is or you must use it as text and so on.

Well, too much thinking, the answer is to use the "between" keyword and putting date as text including time as shown.


select * from Scheme.OperationAudit where AuditDate between '07/01/2013 00:00' and '08/14/2013 23:59' order by AuditDate asc


Remember that date format depends of format used by the server, this is easy to know by using 13, yes, put 13 first in the date and if the query shows error then the month is not first (because there are just 12 months).