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

Откуда: Ставрополь
Сообщений: 47
Доброе время суток, есть таблица с полем Time(Bigint) в котором как я полагаю хранится время в миллисекундах (129530217140113009). Теперь необходимо добавить запись в таблицу, вопрос как перевести дату в такой формат?
20 июн 11, 12:28    [10839581]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
А раньше это как делали?
20 июн 11, 12:38    [10839650]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
Denis_56, если 129530217140113009 - это пример значения из поля в мс, то получается интервал больше четырех миллионов лет. вы правда уверены, что в вашей базе время хранится именно таким образом?
20 июн 11, 12:56    [10839792]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
BestZvit
Member

Откуда: Гоблино
Сообщений: 2250
Shakill
получается интервал больше четырех миллионов лет. вы правда уверены, что в вашей базе время хранится именно таким образом?


Как вариант, база - "Учет динозавров".
Поле, к примеру - дата рождения.
20 июн 11, 13:29    [10840075]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Denis_56
Member

Откуда: Ставрополь
Сообщений: 47
Таблица от сторонней программы, по этому я не могу сказать как вычисляется это поле. Из названия поля и по формирующимся отчетам я сделал вывод, что там хранится время. Значение 129526712110000000 соответствует 16.06.2011 8:13:32 (10 разряд соответствует 1 секунде).
20 июн 11, 13:30    [10840085]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
Denis_56, выясните у разработчиков программы либо у того, кто уже имел дело с этой таблицей, формулу преобразования.

BestZvit, но зачем знать дату рождения динозавра с точностью до мс, есть версии?
20 июн 11, 13:48    [10840222]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Denis_56
Member

Откуда: Ставрополь
Сообщений: 47
[quot Shakill]Denis_56, выясните у разработчиков программы либо у того, кто уже имел дело с этой таблицей, формулу преобразования.

Не представляется возможным.
20 июн 11, 13:52    [10840263]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
Denis_56, тогда изучайте базу, сопоставляйте с отчётами, выводите зависимость. sql server тут ни при чём
20 июн 11, 13:58    [10840306]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
BestZvit
Shakill
получается интервал больше четырех миллионов лет. вы правда уверены, что в вашей базе время хранится именно таким образом?


Как вариант, база - "Учет динозавров".
Поле, к примеру - дата рождения.

Да, но динозавры вымерли 70 миллионов лет назад.
20 июн 11, 14:09    [10840383]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Anatoly Podgoretsky
BestZvit
пропущено...


Как вариант, база - "Учет динозавров".
Поле, к примеру - дата рождения.

Да, но динозавры вымерли 70 миллионов лет назад.

скорее всего, появились они несколько раньше, чем вымерли
20 июн 11, 14:14    [10840424]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Denis_56
Member

Откуда: Ставрополь
Сообщений: 47
Поставлю вопрос по другому, как через sql запрос перевести дату например полученную от getdate() в количество секунд или миллисекунд от 01.01.1900?
20 июн 11, 14:16    [10840443]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
Это не целое, разве что в наносекундах, вероятно это число с плавающей запятой, двоичный образ
20 июн 11, 14:20    [10840482]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
Denis_56
Поставлю вопрос по другому, как через sql запрос перевести дату например полученную от getdate() в количество секунд или миллисекунд от 01.01.1900?

Даже если это в микросекундах, то это порядка 1.5 миллиона лет
20 июн 11, 14:21    [10840499]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
Denis_56
Поставлю вопрос по другому, как через sql запрос перевести дату например полученную от getdate() в количество секунд или миллисекунд от 01.01.1900?


в секунды

DECLARE @now datetime = GETDATE()

SELECT DATEDIFF(dd, '19000101', @now) * CAST(24 AS bigint) * 60 * 60
20 июн 11, 14:32    [10840627]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Denis_56
Member

Откуда: Ставрополь
Сообщений: 47
Нет, там 1295267122 соответствует 16.06.2011 8:13:32, остальные 8 цифр это нано, мили… пока я сделал такой вывод из анализов отчетов.
20 июн 11, 14:34    [10840642]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
Времени '20110616 8:13:32' соответствует дата UNIX 1308212012
SELECT DATEDIFF(SECOND,'1970','20110616 8:13:32')
Почти подходит...
20 июн 11, 14:43    [10840742]     Ответить | Цитировать Сообщить модератору
 Re: Как перевести дату в миллисекунды?  [new]
Василий Федорович
Guest
Denis_56
Нет, там 1295267122 соответствует 16.06.2011 8:13:32, остальные 8 цифр это нано, мили… пока я сделал такой вывод из анализов отчетов.


А может 1295267122 - это ключ по связи к другой таблице где есть дата 16.06.2011 8:13:32 ?
20 июн 11, 14:43    [10840744]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить