Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Какой аналог в SQL Server accessовского DateDiff?  [new]
NewSqlUser
Member

Откуда:
Сообщений: 51
subj.
19 дек 03, 10:38    [466519]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
DATEDIFF ( datepart , startdate , enddate )
19 дек 03, 10:42    [466530]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
NewSqlUser
Member

Откуда:
Сообщений: 51
спасибо, появилась такая проблема, в SQL Server'e в SELECT у меня есть такая строка:
Sum(DATEDIFF(n,StartTime,EndTime))/60

в accesse это поле возвращалось как поле с плавающей точкой, а здесь как целое, как сделать чтобы возвращалось с плавающей точкой?
19 дек 03, 10:54    [466560]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
???
Sum(DATEDIFF(n,StartTime,EndTime))/60.0
19 дек 03, 11:01    [466593]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
convert (decimal(9,4),......)
а вообще datediff возрвщвет integer
declare @a int

set @a =3.14
select @a
19 дек 03, 11:02    [466595]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
SELECT DATEDIFF(n ,crdate,getdate())/60.0

FROM
sysobjects
19 дек 03, 11:04    [466603]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
NewSqlUser
Member

Откуда:
Сообщений: 51
спасибо, получилось, а как можно результат округлить до 2-ух знаков после запятой?
19 дек 03, 11:15    [466657]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
SELECT CAST(DATEDIFF(n ,crdate,getdate())/60.0 AS numeric(9,2))

FROM
sysobjects
19 дек 03, 11:23    [466679]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
NewSqlUser
Member

Откуда:
Сообщений: 51
а что лучше (быстрее) в моем случае использовать - CAST или ROUND?
19 дек 03, 11:27    [466686]     Ответить | Цитировать Сообщить модератору
 Re: Какой аналог в SQL Server accessовского DateDiff?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
ROUND тока округлит, но число знаков после запятой (читай тип данных) не изменит. С точки зрения быстродействия, IMHO, не принципиально.
19 дек 03, 11:30    [466695]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить