I have these codes(.net framework 2.0):
string commandText =
"SELECT TOP(@maximumRows) * " +
"FROM " +
"( " +
"SELECT *, ROW_NUMBER() OVER (ORDER BY " + sortExpression.Trim() + ") as rowNumber " +
"FROM " +
"( " +
"SELECT * FROM vw_RFQPartVendor " +
"WHERE Rec_date >= @requestDateFrom " +
"AND Rec_date <= @requestDateTo ";
if (!string.IsNullOrEmpty(rfqNumber))
{
commandText += "AND Regno = @rfqNumber ";
}
if (!string.IsNullOrEmpty(partNumber))
{
commandText += "AND Partno = @partNumber ";
}
if (!string.IsNullOrEmpty(vendorCode))
{
commandText += "AND vendorCode = @vendorCode ";
}
commandText += ")as innerDerivedTable " +
")AS outerDerivedTable " +
"WHERE outerDerivedTable.rowNumber > @startRowIndex " +
"ORDER BY " + sortExpression.Trim();
The part WHERE Rec_date >= @requestDateFrom
and Rec_date <= @requestDateTo
is causing it to run slower, some noticeable seconds.
How can I optimize it to make it run faster?