|  | Posted by David Portas on 01/31/06 01:57 
Edward wrote:
 > Hi group,
 >
 > Using Oracle, and given that $date=30/01/2006, you can construct a query as
 > follows:
 >
 > select * from table
 > where date_field between to_date('$date', 'dd/mm/yyyy') and to_date('$date',
 > 'dd/mm/yyyy')+1
 >
 > What is the equivalent with MSSQL?
 >
 > Thanks,
 >
 > Edward
 
 DECLARE @date DATETIME ;
 SET @date = '20060130' ;
 
 SELECT *
 FROM table
 WHERE date_col >= @date
 AND date_col < DATEADD(DAY,1,@date) ;
 
 In SQL Server DATETIME / SMALLDATETIME always includes time as well as
 date. The above query restricts to a 24hr daterange so adjust the
 DATEADD or < accordingly if that isn't what you intended.
 
 --
 David Portas, SQL Server MVP
 
 Whenever possible please post enough code to reproduce your problem.
 Including CREATE TABLE and INSERT statements usually helps.
 State what version of SQL Server you are using and specify the content
 of any error messages.
 
 SQL Server Books Online:
 http://msdn2.microsoft.com/library/ms130214(en-US,SQL.90).aspx
 --
 [Back to original message] |