Преобразуйте метку времени UNIX в system. datetime и получите последние 24 часа в SQL server
Уважаемая Мадам / Сэр,
Хороший день,
У меня есть база данных в SQL server, и есть столбец для времени, но в синтаксисе UNIX я попытался преобразовать его, и он работал для меня с помощью этого кода :
Select dateadd(S, [TIMESTAMP_S], '1970-01-01'),Value From [table_Name]
но моя главная проблема заключается в том, что когда я пытаюсь получить последние 24 часа из таблицы, я не могу получить ее после преобразования и сталкиваюсь с ошибкой.
Мой код с конвертацией и получением последних 24 часов таков :
select DATEADD(ss, TIMESTAMP_S, '1970-01-01 00:00') AS ConvertedDate from Table_Name where TIMESTAMP_S between dateadd(hour, -24, CURRENT_TIMESTAMP) AND CURRENT_TIMESTAMP
ошибка есть :
Msg 8115, Level 16, State 2, Line 18 Arithmetic overflow error converting expression to data type datetime.
спасибо заранее.
Что я уже пробовал:
Преобразование временного кода Unix:
Select dateadd(S, [TIMESTAMP_S], '1970-01-01'),Value From [table_Name]
преобразование времени Unix и узнать последние 24 часа код:
select DATEADD(ss, TIMESTAMP_S, '1970-01-01 00:00') AS ConvertedDate from Table_Name where TIMESTAMP_S between dateadd(hour, -24, CURRENT_TIMESTAMP) AND CURRENT_TIMESTAMP
CHill60
Вы сказали, что у вас есть колонка для time "в синтаксисе UNIX" ... значит, ты хранил это время как варчар?