DateTime в условии запроса

Ниггадяй
Дата: 15.02.2010 11:12:15
tpg
IZU.ver.SS
@Date		DateTime = '12.02.2010'
Только, чтобы не "нарваться" на языковые установки - http://www.sql.ru/faq/faq_topic.aspx?fid=109

set dateformat dmy
tpg
Дата: 15.02.2010 11:17:10
Ниггадяй
set dateformat dmy
Угу... И ещё 2 способа...
IZU.ver.SS
Дата: 15.02.2010 14:48:15
Спасибо за дополнительные подсказки...

Я тут поэкспериментировал, на данную тему, а именно попытался разобраться со входящими параметрами, и заметил, что именно тип DateTime больше всего "нервирует" оптимизатор, ибо в итоге получилась вот такая процедура (конечный вариант). Внутри нее присутствуют другие параметры с типами Int и Money, но запрос выполняется менее секунды:

CREATE PROCEDURE [dbo].[sp_TBSGetBankDocumentExist] 

	@Id 	Int,
	@Date 	DateTime = '20100212'

AS

Declare @Number 	Int
Declare @Amount	Money
Declare @Result 	Int

Select 	@Number=Number, @Amount=Amount, @Date=DateAdd(d,-2,StatusDateTime)
From 	BankDocument
Where	[Id]=@Id

Select	@Result=count(*)
From 	BankDocument
Where 	Number=@Number 
	AND Amount=@Amount
	AND StatusId=2
	AND StatusDateTime>@Date

Select	@Result

Я правильно рассуждаю...?