Cześć, mam funkcje, która zwraca mi z datetime samą tylko datę(bez czasu):
CREATE FUNCTION [dbo].[get_date]
(
@date datetime
)
RETURNS varchar(11)
AS
BEGIN
DECLARE @Result datetime
SET @result = CONVERT(varchar(11),@date,101)
RETURN @Result
END
Analogicznie jest zrobiona funkcja zwracająca sam czas(bez daty) nazwana get_time.
I mam zapytanie:
SELECT cos_tam
FROM jakas_tabela e
order by dbo.get_date(e.nDate), dbo.get_time(e.nTime)
I dostaję błąd:
Msg 242, Level 16, State 3, Line 1
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
Gdy pozbędę się z order by funkcji get_date(zostawiając samo get_time) to jest ok. Ale muszę mieć to get_date.
Jeśli chodzi o daty jakie są zwracane to nie ma w nich nic dziwnego.
Z jakiegoś powodu zapytanie, które jeszcze wczoraj chodziło, dzisiaj nie działa. Nie mam już siły, ani pomysłów. Wiecie, o co może chodzić?