SQL-поиск даты между значениями или Мин / Макс, если NULL

У меня есть хранимая процедура T-SQL, в которой я хочу искать определенное значение и, возможно, ограничить поиск определенными датами, если они переданы. Если для любой из этих дат переданы нулевые значения, тогда я хочу их игнорировать. Как я думаю об этом, устанавливая даты ввода на минимум или максимум, если они равны нулю. Однако я бы предпочел не жестко указывать минимальные и максимальные значения. Так что мне интересно, что такое SQL-эквивалент C # DateTime.MaxValue и DateTime.MinValue .

Я думаю об использовании Coalesce в таком виде

SELECT EmployeeName FROM Employee
WHERE  EmployeeID = @EmployeeId AND
Birthday BETWEEN Coalesce(@StartDate, <MinDateTime>) AND  
                 Coalesce(@EndDate, <MaxDateTime>)

Есть ли встроенный в функции / константе / переменной / перечислении я могу использовать для переменных и ?

Есть предложения?

8
задан Chaitanya 20 September 2010 в 07:33
поделиться