У меня есть таблица (MYTABLE) с колонкой BIGINT (DT), где хранятся временные метки. Я узнал, что они также содержат локальный часовой пояс моих пользователей. Я хочу избавиться от часового пояса от этих значений в моем следующем обновлении базы данных, чтобы эти временные метки были эпохой UNIX.Как вычесть часовой пояс из столбца DATE (BIGINT) в android?
Какой SQL-запрос следует учитывать (для примера запроса GMT + 3)?
UPDATE `MYTABLE` SET `DT` = `DT` - (3 * 3600000)
В порядке?
Мне также нужно запустить это ОБНОВЛЕНИЕ для значений даты, для которых миллисекунды равны нулю. Должен ли я конвертировать DT
в подстроку и искать последние 3 символа в ноль? Каков правильный путь?
Если они сохранены как эпоха, создавая новые объекты Date с новой датой (x) (x является bigint из db), а затем с использованием m такие методы, как .getHours(), вернут часы, скорректированные для часовой пояс устройства ... По крайней мере, я думаю, что это ... –
К сожалению, ваше предположение о неправильном и моих данных сохраняется в часовом поясе. –
Мне любопытно узнать, как сохранить значения с часовым поясом –