SQL Server : fetching records between two dates?

date-range, datetime, sql-server

Solution

As others have answered, you probably have a `DATETIME` (or other variation) column and not a `DATE` datatype.

Here's a condition that works for all, including `DATE`:

SELECT * 
FROM xxx 
WHERE dates >= '20121026' 
  AND dates <  '20121028'    --- one day after 
                             --- it is converted to '2012-10-28 00:00:00.000'
 ;

@Aaron Bertrand has blogged about this at: What do `BETWEEN` and the devil have in common?

Problem

In SQL I write a `SELECT` statement to fetch data between two dates, using `between and` Ex: ``` select * from xxx where dates between '2012-10-26' and '2012-10-27' ``` But the rows returned are for 26th only, not 26th and 27th. Can you help me? Thank you.

Original source

Related problems