Я настоятельно рекомендую вам использовать версию, которая может использовать индекс:
SELECT DocumentNo, DocumentDate, TotalNetValue, TotalTaxValue, TotalGrossValue
FROM dbo.SOPOrderReturn
WHERE DocumentDate >= DATEADD(DAY, 1, EOMONTH(GETDATE(), -1)) AND
DocumentDate < DATEADD(DAY, 1, EOMONTH(GETDATE());
Поскольку ни одна функция не применяется к DocumentDate
, оптимизатор сможет использовать индекс.
Обратите внимание, что EOMONTH()
доступно с SQL Server 2012. В более ранних версиях существуют эквивалентные методы.