>>Script Language and Platform: TSQL/SQL Server 2000
If you apply a DatePart function to seperate the date and time, in this case, the index will not be used (because of function usage) and your query may take too much long time.
These two functions will ease your life if you assign the returned values to two variables in use those two variables in your query with syntax.
SELECT listOfColumns
FROM MyTable
Where TransactionDateTime >= @StartDate And TransactionDateTime <= @endDate
Author: Anjum Niaz
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO— Returns first moment of any date,
— usefull function to be used
— to calculated before using in
— select statement.
— Highly recommended to optimize
— queries based on datetime
— conditionsCREATE FUNCTION [GetStartDate]
(
@Date DateTime
)
RETURNS DateTime
AS
BEGINRETURN Convert(DateTime, Convert(VarChar(30), @Date, 102) + ” 00:00:00.000 AM”, 121)
END
GO
CREATE FUNCTION [GetEndDate]
(
@Date DateTime
)
RETURNS DateTime
AS
BEGINRETURN Convert(DateTime, Convert(VarChar(30), @Date, 102) + ” 11:59:59.998 PM”, 121)
END
GO
Disclaimer: We hope that the information on these script pages is
valuable to you. Your use of the information contained in these pages,
however, is at your sole risk. All information on these pages is provided
“as -is”, without any warranty, whether express or implied, of its accuracy,
completeness, or fitness for a particular purpose…
Disclaimer Continued
Back to Database Journal Home