day  — функция скриптa и диаграммы
                Эта функция возвращает день в виде целого числа, а дробное выражение expression интерпретируется как дата согласно стандартной интерпретации чисел.
Функция возвращает день месяца для определенной даты. Она широко используется с целью получения значения для поля дня в составе измерения календаря.
Синтаксис:
day(expression)
Возвращаемые типы данных: целое
| Пример | Результат | 
|---|---|
| 
                                 day( 1971-10-12 )  | 
                            возвращает 12 | 
| day( 35648 ) | возвращает 6, так как 35648 = 1997–08–06 | 
Пример 1. Набор данных DateFormat (скрипт)
Обзор
Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
- 
                                    
Набор данных с датами под именем Master_Calendar. Системной переменной DateFormat задано значение DD/MM/YYYY.
 - 
                                    
Предшествующая загрузка, создающая дополнительное поле под именем day_of_month с использованием функции day().
 - 
                                    
Дополнительное поле под именем long_date с использованием функции date() для выражения полного названия месяца.
 
Скрипт загрузки
SET DateFormat='DD/MM/YYYY';
Master_Calendar:
Load
        date,
        date(date,'dd-MMMM-YYYY') as long_date,
        day(date) as day_of_month
Inline 
[
date
03/11/2022
03/12/2022
03/13/2022
03/14/2022
03/15/2022
03/16/2022
03/17/2022
03/18/2022
03/19/2022
03/20/2022
03/21/2022						
];
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:
- 
                                    
date
 - 
                                    
long_date
 - 
                                    
day_of_month
 
| 
                                             date  | 
                                        
                                             long_date  | 
                                        
                                             day_of_month  | 
                                    
|---|---|---|
| 
                                             03/11/2022  | 
                                        
                                             11-March- 2022  | 
                                        
                                             11  | 
                                    
| 
                                             03/12/2022  | 
                                        
                                             12-March- 2022  | 
                                        
                                             12  | 
                                    
| 
                                             03/13/2022  | 
                                        
                                             13-March- 2022  | 
                                        
                                             13  | 
                                    
| 
                                             03/14/2022  | 
                                        
                                             14-March- 2022  | 
                                        
                                             14  | 
                                    
| 
                                             03/15/2022  | 
                                        
                                             15-March- 2022  | 
                                        
                                             15  | 
                                    
| 
                                             03/16/2022  | 
                                        
                                             16-March- 2022  | 
                                        
                                             16  | 
                                    
| 
                                             03/17/2022  | 
                                        
                                             17-March- 2022  | 
                                        
                                             17  | 
                                    
| 
                                             03/18/2022  | 
                                        
                                             18-March- 2022  | 
                                        
                                             18  | 
                                    
| 
                                             03/19/2022  | 
                                        
                                             19-March- 2022  | 
                                        
                                             19  | 
                                    
| 
                                             03/20/2022  | 
                                        
                                             20-March- 2022  | 
                                        
                                             20  | 
                                    
| 
                                             03/21/2022  | 
                                        
                                             21-March- 2022  | 
                                        
                                             21  | 
                                    
День месяца правильно вычисляется функцией day() в скрипте.
Пример 2. Даты ANSI (скрипт)
Обзор
Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
- 
                                    
Набор данных с датами под именем Master_Calendar. Используется системная переменная DateFormat DD/MM/YYYY. Однако даты, включенные в набор данных, имеют формат стандарта ANSI.
 - 
                                    
Предшествующая загрузка, создающая дополнительное поле под именем day_of_month с использованием функции date().
 - 
                                    
Дополнительное поле под именем long_date с использованием функции date() для выражения даты с использованием полного названия месяца.
 
Скрипт загрузки
SET DateFormat='DD/MM/YYYY'; 
Master_Calendar: 
Load 
       date, 
       date(date,'dd-MMMM-YYYY') as long_date, 
       day(date) as day_of_month
Inline  
[ 
date 
2022-03-11
2022-03-12
2022-03-13
2022-03-14
2022-03-15
2022-03-16
2022-03-17
2022-03-18
2022-03-19
2022-03-20
2022-03-21
 ]; 
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:
- 
                                    
date
 - 
                                    
long_date
 - 
                                    
day_of_month
 
| 
                                             date  | 
                                        
                                             long_date  | 
                                        
                                             day_of_month  | 
                                    
|---|---|---|
| 03/11/2022 | 11-March- 2022 | 11 | 
| 03/12/2022 | 12-March- 2022 | 12 | 
| 03/13/2022 | 13-March- 2022 | 13 | 
| 03/14/2022 | 14-March- 2022 | 14 | 
| 03/15/2022 | 15-March- 2022 | 15 | 
| 03/16/2022 | 16-March- 2022 | 16 | 
| 03/17/2022 | 17-March- 2022 | 17 | 
| 03/18/2022 | 18-March- 2022 | 18 | 
| 03/19/2022 | 19-March- 2022 | 19 | 
| 03/20/2022 | 20-March- 2022 | 20 | 
| 03/21/2022 | 21-March- 2022 | 21 | 
День месяца правильно вычисляется функцией day() в скрипте.
Пример 3. Неформатированные даты (скрипт)
Обзор
Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
- 
                                    
Набор данных с датами под именем Master_Calendar. Используется системная переменная DateFormat DD/MM/YYYY.
 - 
                                    
Предшествующая загрузка, создающая дополнительное поле под именем day_of_month с использованием функции day().
 - 
                                    
Первоначальная дата без форматирования под именем unformatted_date.
 - 
                                    
Дополнительное поле под именем long_date с использованием date() служит для преобразования цифровой даты в поле форматированной даты.
 
Скрипт загрузки
SET DateFormat='DD/MM/YYYY'; 
Master_Calendar: 
Load 
      unformatted_date, 
      date(unformatted_date,'dd-MMMM-YYYY') as long_date, 
      day(date) as day_of_month
Inline
[ 
unformatted_date 
44868 
44898 
44928 
44958 
44988 
45018 
45048 
45078 
45008 
45038 
45068 
]; 
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:
- 
                                    
unformatted_date
 - 
                                    
long_date
 - 
                                    
day_of_month
 
| 
                                             unformatted_date  | 
                                        
                                             long_date  | 
                                        
                                             day_of_month  | 
                                    
|---|---|---|
| 
                                             44868  | 
                                        
                                             03-November- 2022  | 
                                        
                                             3  | 
                                    
| 
                                             44898  | 
                                        
                                             03-December- 2022  | 
                                        
                                             3  | 
                                    
| 
                                             44928  | 
                                        
                                             02-January- 2023  | 
                                        
                                             2  | 
                                    
| 
                                             44958  | 
                                        
                                             01-February- 2023  | 
                                        
                                             1  | 
                                    
| 
                                             44988  | 
                                        
                                             03-March- 2023  | 
                                        
                                             3  | 
                                    
| 
                                             45008  | 
                                        
                                             23-March- 2023  | 
                                        
                                             23  | 
                                    
| 
                                             45018  | 
                                        
                                             02-April- 2023  | 
                                        
                                             2  | 
                                    
| 
                                             45038  | 
                                        
                                             22-April- 2023  | 
                                        
                                             22  | 
                                    
| 
                                             45048  | 
                                        
                                             02-May- 2023  | 
                                        
                                             2  | 
                                    
| 
                                             45068  | 
                                        
                                             02-May- 2023  | 
                                        
                                             22  | 
                                    
| 
                                             45078  | 
                                        
                                             01-June- 2023  | 
                                        
                                             1  | 
                                    
День месяца правильно вычисляется функцией day() в скрипте.
Пример 4. Расчет месяца окончания срока действия (диаграмма)
Обзор
Откройте Редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
- 
                                    
Набор данных с заказами, размещенными в марте, под именем Orders. Данная таблица содержит слишком много полей.
- 
                                            
id
 - 
                                            
order_date
 - 
                                            
amount
 
 - 
                                            
 
Скрипт загрузки
Orders: 
Load 
	 id, 
	 order_date, 
	 amount 
Inline  
[ 
id,order_date,amount 
1,03/01/2022,231.24 
2,03/02/2022,567.28 
3,03/03/2022,364.28 
4,03/04/2022,575.76 
5,03/05/2022,638.68 
6,03/06/2022,785.38 
7,03/07/2022,967.46 
8,03/08/2022,287.67 
9,03/09/2022,764.45 
10,03/10/2022,875.43 
11,03/11/2022,957.35 
]; 
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение:order_date.
Чтобы рассчитать дату доставки, создайте эту меру: =day(order_date+5).
| 
                                             order_date  | 
                                        
                                             =day(order_date+5)  | 
                                    
|---|---|
| 
                                             03/11/2022  | 
                                        
                                             16  | 
                                    
| 
                                             03/12/2022  | 
                                        
                                             17  | 
                                    
| 
                                             03/13/2022  | 
                                        
                                             18  | 
                                    
| 
                                             03/14/2022  | 
                                        
                                             19  | 
                                    
| 
                                             03/15/2022  | 
                                        
                                             20  | 
                                    
| 
                                             03/16/2022  | 
                                        
                                             21  | 
                                    
| 
                                             03/17/2022  | 
                                        
                                             22  | 
                                    
| 
                                             03/18/2022  | 
                                        
                                             23  | 
                                    
| 
                                             03/19/2022  | 
                                        
                                             24  | 
                                    
| 
                                             03/20/2022  | 
                                        
                                             25  | 
                                    
| 
                                             03/21/2022  | 
                                        
                                             26  | 
                                    
Функция day() правильно определяет, что заказ, размещенный 11 марта, будет доставлен 16 марта с учетом 5-дневного периода доставки.