Time64
Тип данных Time64 представляет время суток с дробными секундами.
Он не содержит компонентов календарной даты (день, месяц, год).
Параметр precision определяет количество знаков после запятой и, соответственно, размер тика.
Размер тика (precision): 10-precision секунды. Допустимый диапазон: 0..9. Наиболее часто используются значения: 3 (миллисекунды), 6 (микросекунды) и 9 (наносекунды).
Синтаксис:
Внутренне тип Time64 хранит знаковое 64-битное десятичное число (Decimal64), представляющее дробные секунды.
Разрешение тиков определяется параметром precision.
Часовые пояса не поддерживаются: указание часового пояса для Time64 приведёт к ошибке.
В отличие от DateTime64, Time64 не хранит дату.
См. также Time.
Диапазон текстового представления значений: [-999:59:59.000, 999:59:59.999] для precision = 3. В общем случае минимум — -999:59:59, максимум — 999:59:59 с количеством дробных цифр до значения precision (для precision = 9 минимум — -999:59:59.999999999).
Подробности реализации
Представление.
Знаковое значение типа Decimal64, представляющее количество долей секунды с precision знаками после запятой.
Нормализация.
При разборе строк в значение типа Time64 компоненты времени нормализуются, но не проверяются на корректность.
Например, 25:70:70 интерпретируется как 26:11:10.
Отрицательные значения.
Ведущий знак минус поддерживается и сохраняется.
Отрицательные значения обычно возникают в результате арифметических операций над значениями Time64.
Для Time64 отрицательные входные значения сохраняются как для текстовых (например, '-01:02:03.123'), так и для числовых входных данных (например, -3723.123).
Сатурация (ограничение диапазона).
Компонента времени суток ограничивается диапазоном [-999:59:59.xxx, 999:59:59.xxx] при преобразовании в компоненты или сериализации в текст.
Сохраняемое числовое значение может выходить за этот диапазон; однако любое извлечение компонентов (часы, минуты, секунды) и текстовое представление используют ограниченное (сатурированное) значение.
Часовые пояса.
Time64 не поддерживает часовые пояса.
Указание часового пояса при создании типа или значения Time64 приводит к ошибке.
Аналогично, попытки применить или изменить часовой пояс для столбцов Time64 не поддерживаются и приводят к ошибке.
Примеры
- Создание таблицы со столбцом типа
Time64и вставка в неё данных:
- Фильтрация по значениям типа
Time64
Примечание: toTime64 разбирает числовые литералы как секунды с дробной частью в соответствии с указанной точностью, поэтому явно указывайте требуемое количество знаков после запятой.
- Проверка получившегося типа:
См. также