Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > View, с сортировкой по DateTime


Автор: uranpro 21.5.2008, 13:39
Код

SELECT     dbo.T_Objects.ID, dbo.T_Objects.ObjDesc, dbo.T_HCheck.ZNumber, dbo.T_Check.Price, dbo.T_HCheck.TDate
FROM         dbo.T_Objects INNER JOIN
                      dbo.T_HCheck ON dbo.T_Objects.ID = dbo.T_HCheck.ID_Objects INNER JOIN
                      dbo.T_Check ON dbo.T_HCheck.ID = dbo.T_Check.ID_HCheck
WHERE     (dbo.T_Objects.ID IN (47, 48)) AND (CONVERT(varchar(30), dbo.T_HCheck.TDate, 102) > '01.05.2008') AND (CONVERT(varchar(30), dbo.T_HCheck.TDate, 
                      102) < '21.05.2008')


выдает мне все значения, даже если оно 01.01.2008
а должно выдовать с 01,05,2008 по 21,05,2008

в чем ошибка ?? подскажите пожалуйста


или как можно преобразовать строку 01,05,2008 в тип DateTime. я думаю в этом вся проблема(( он сравнивает сумму значений символов, а не представление типа DateTime

Автор: Magnifico 21.5.2008, 14:12
 а зачем ты дату в строку конвертил , сравнивай сразу даты

Код

select case 
when (getdate()  > '2008/05/01') AND (getdate()  < '2008/05/22')
then 1 else 0 end

Автор: uranpro 21.5.2008, 15:49
спасибо!! постоянно вручаешь^^ в программе тип даты , которая передается, сменю

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)