Перейти к основному содержимому

Интерпретация даты и времени

Программа Qlik Sense сохраняет каждое значение даты, времени и метки времени, обнаруженное в данных, как серийный номер даты. Серийный номер даты используется для дат, значений времени и меток времени, а также в арифметических вычислениях на основе записей даты и времени. Таким образом, можно складывать и вычитать значения даты и времени, сравнивать временные интервалы и т. д.

Серийный номер даты – это (действительное) число дней, прошедших с 30 декабря 1899 г., то есть формат Qlik Sense идентичен системе дат 1900, которая используется в Microsoft Excel и других программах, в диапазоне от 1 марта 1900 г. до 28 февраля 2100 г. Например, 33857 соответствует 10 сентября 1992 г. За пределами этого диапазона программа Qlik Sense использует ту же систему дат, расширенную до григорианского календаря.

Примечание: Если в поле имеются даты, предшествующие 1 января 1980 г., поле не будет содержать системные теги $date или $timestamp. Qlik Sense распознает это поле в качестве поля даты, однако если существует необходимость в тегах, их можно добавить в скрипт загрузки данных вручную при помощи оператора Tag. Для получения дополнительной информации см. Tag.

Серийный номер для значения времени представляет собой число от 0 до 1. Серийный номер 0.00000 соответствует 00:00:00, а 0.99999 соответствует 23:59:59. Смешанные числа указывают дату и время: серийный номер 2.5 означает 1 января 1900 г., полдень.

Однако данные отображаются в соответствии с форматом строки. По умолчанию используются настройки из раздела Панель управления. Можно настроить формат данных в скрипте с использованием переменных интерпретации чисел или с помощью функции форматирования. Наконец, можно переформатировать данные на листе свойств объекта листа.

Для получения дополнительной информации о переменных интерпретации числа см. Переменные интерпретации числа.

Для получения дополнительной информации о функциях форматирования см. Функции форматирования.

Example 1:  

  • 1997-08-06 хранится в виде: 35648
  • 09:00 хранится в виде: 0.375
  • 1997-08-06 09:00 хранится в виде: 35648.375

и наоборот:

  • 35648 в числовом формате 'D/M/YY' отображается как: 6/8/97
  • 0.375 в числовом формате 'hh.mm' отображается как: 09.00

Программа Qlik Sense следует установленным правилам при попытке интерпретации дат, времени и данных других типов. Однако окончательный результат будет зависеть от нескольких факторов, как описано выше.

Example 2:  

В этих примерах предполагаются следующие настройки по умолчанию:

  • Десятичный разделитель числа:
  • Краткий формат даты: YY-MM-DD
  • Формат времени: hh:mm

В следующей таблице показаны различные представления, когда данные считываются в программу Qlik Sense без специальной функции интерпретации в скрипте:

Вид таблицы в случае, когда данные считываются без специальной функции интерпретации в скрипте
Исходные данные Интерпретация программы Qlik Sense по умолчанию Формат даты 'YYYY-MM-DD' Формат даты 'MM/DD/YYYY' Формат времени 'hh:mm' Формат числа '# ##0.00'
0.375 0.375 1899-12-30 12/30/1899 09:00 0.38
33857 33857 1992-09-10 09/10/1992 00:00 33 857.00
97-08-06 97-08-06 1997-08-06 08/06/1997 00:00 35 648.00
970806 970806 4557-12-21 12/21/4557 00:00 970 806.00
8/6/97 8/6/97 8/6/97 8/6/97 8/6/97 8/6/97

В следующей таблице показаны различные представления, когда данные считываются в программу Qlik Sense с помощью функции интерпретации в скрипте date#( A, 'M/D/YY'):

Вид таблицы в случае, когда данные считываются с помощью функции интерпретации в скрипте date#( A, 'M/D/YY')
Исходные данные Интерпретация программы Qlik Sense по умолчанию Формат даты 'YYYY-MM-DD' Формат даты 'MM/DD/YYYY' Формат времени 'hh:mm' Формат числа '# ##0.00'
0.375 0.375 0.375 0.375 0.375 0.375
33857 33857 33857 33857 33857 33857
97-08-06 97-08-06 97-08-06 97-08-06 97-08-06 97-08-06
970806 970806 970806 970806 970806 970806
8/6/97 8/6/97 1997-08-06 08/06/1997 00:00 35 648.00