Функции начала и завершения в Qlik Sense с примерами
Сегодня мы поговорим о функциях начала и завершения (Start и Stop) Qlik Sense. Эти функции представляют собой тип функций даты и времени. Мы называем их функциями начала и завершения, потому что они в основном возвращают метки времени или данные, относящиеся к началу или концу определенного периода, такого как год, квартал, месяц, лунная неделя, неделя и т. д.
Функции начала и завершения с примерами
1. Что такое функции начала и завершения в Qlik Sense?
Итак, ниже мы обсудим различные функции начала и завершения в Qlik Sense, которые содержат функции года, недели, дня, квартала, начала и конца месяца. Кроме того, мы увидим синтаксис и рассмотрим пример каждой функции начала и завершения в Qlik Sense.
i. YearStart
Эта функция возвращает отметку времени первой даты года.
Синтаксис:
YearStart(date[, period_no[, first_month_of_year]])
Где, date – это дата, которую вы хотите оценить и для которой хотите указать год начала.
Period_no – смещение года, т.е. если значение равно «0», то возвращается начало текущего года, но отрицательное значение будет учитывать предыдущий год, а положительное значение будет учитывать следующий год, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать год. Мы используем его в том случае, если финансовый год начинается не с января.
Например,
yearstart ('19.10.2018 ') вернет 01.01.2018.
yearstart (’19.10 / 2018 ′, -1) вернет 01.01.2017.
ii. YearEnd
Эта функция возвращает отметку времени последней даты до последней миллисекунды последнего года. Тип данных двойной.
Синтаксис:
YearEnd(date[, period_no[, first_month_of_year]])
Где date – это дата, которую вы хотите оценить, когда вы хотите, чтобы закончился год.
Period_no – смещение года, т.е. если значение равно «0», то возвращается начало текущего года, но отрицательное значение будет учитывать предыдущий год, а положительное значение будет учитывать следующий год, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать свой год. Мы используем его в случае финансового года, который начинается не с января.
Например,
yearend(’19/10/2018′) вернет 31.12.2018 23:59:59.
yearend(’19/10/2018′, -1) вернет 01.01.2017 23:59:59.
iii. Yearname
Эта функция возвращает год, соответствующий первой миллисекунде первой даты года, как указано в дате в функции. Эта функция также возвращает четырехзначное целое число и соответствующее текстовое представление.
Синтаксис:
YearName(date[, period_no[, first_month_of_year]])
Где date – это дата, которую вы хотите оценить и на которую хотите рассчитать год.
Period_no – смещение года, т.е. если значение равно «0», то возвращается начало текущего года, но отрицательное значение будет учитывать предыдущий год, а положительное значение будет учитывать следующий год, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать свой год. Мы используем его в случае финансового года, который начинается не с января.
Например,
yearname (’15/10/2018′) вернет 2018.
yearname (’15/10/2018′, -1) вернет 2017.
yearname (’15/10/2018′, 0, 4) вернет 2018-2019.
iv. Quarterstart
Эта функция возвращает дату начала квартала, в который попадает заданная дата.
Синтаксис:
QuarterStart(date[, period_no[, first_month_of_year]])
Где date – это дата, которую вы хотите оценить и для которой требуется дата начала квартала.
Period_no – смещение квартала, т.е. если значение равно «0», то возвращается начало текущего квартала, но при отрицательном значении будет учитываться предыдущий квартал, а при положительном значении – следующий квартал, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать свой год. Мы используем его в случае финансового года, который начинается не с января.
Например,
quarterstart(’29/10/2005′) вернет 01/10/2005 как дату начала квартала, на который приходится данная дата.
v. Quarterend
Эта функция возвращает дату окончания квартала, в который попадает заданная дата. Мы оцениваем данные с точностью до последней миллисекунды, а затем возвращаем результаты за соответствующий квартал.
Синтаксис:
QuarterEnd(date[, period_no[, first_month_of_year]])
где date – это дата, которую вы хотите оценить и для которой требуется дата окончания квартала.
Period_no – смещение квартала, т.е. если значение равно «0», то возвращается начало текущего квартала, но при отрицательном значении будет учитываться предыдущий квартал, а при положительном значении – следующий квартал, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать год. Мы используем его в случае финансового года, который начинается не с января.
Например,
quarterstart(’29/10/2017′) вернет 31.12.2017 23:59:59 в качестве конечной даты квартала, на который приходится данная дата.
vi. Quartername in Qlik Sense
Эта функция возвращает двойное значение с названиями месяцев, составляющих квартал, вместе с годом, соответствующим дате, оцениваемой в функции.
Синтаксис:
QuarterName(date[, period_no[, first_month_of_year]])
где date – это дата, которую вы хотите оценить и для которой нужно указать название квартала.
Period_no – смещение квартала, т.е. если значение равно «0», то возвращается начало квартала, указанного в дате, но отрицательное значение будет рассматривать предыдущий квартал, а положительное значение будет рассматривать следующий квартал, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать год. Мы используем его в случае финансового года, который начинается не с января.
Например,
quartername(’20/10/2017′) вернет данные с октября по декабрь 2017 г.
quartername(’20/10/2017′, -1) вернет данные с июля по сентябрь 2017 года как квартал, предшествующий текущему.
quartername(’20/10/2017′, 0, 3) вернет данные с сентября по ноябрь 2017 г.
vii. Monthstart
Эта функция возвращает дату первого дня месяца, указанного в дате.
Синтаксис:
MonthStart(date[, period_no])
Где date – это дата, которую вы хотите оценить, и желаемая дата начала месяца.
Period_no – это смещение месяца, т.е. если значение равно «0», то возвращается начало месяца в заданную дату, но отрицательное значение будет учитывать предыдущий месяц, а положительное значение будет рассматривать последующий месяц, для которого будет возвращена дата.
Например,
monthstart ('15.10.2018 ') вернет 01.10.2018.
monthstart (’15.10.2018 ′, -1) вернет 01.09.2018.
monthstart («15.10.2018», 1) вернет 01/11/2018.
viii. Monthend
Эта функция возвращает дату последнего дня с точностью до последней миллисекунды месяца, указанного в дате.
Синтаксис:
MonthEnd(date[, period_no])
Где date – это дата, которую вы хотите оценить, и желаемая дата окончания месяца.
Period_no – это смещение месяца, т.е. если значение равно «0», то возвращается конец месяца в заданную дату, но отрицательное значение будет учитывать предыдущий месяц, а положительное значение будет рассматривать последующий месяц, для которого будет возвращена дата.
Например,
monthstart ('15.11.2018 ') возвращает 30.11.2018 23:59:59.
monthstart (’15.11.2018 ′, -1) возвращает 31.10.2018 23:59:59.
monthstart («15.11.2018», 1) возвращает 31.12.2018 23:59:59.
ix. Monthname
Эта функция возвращает название месяца, отсчитываемого от заданной даты.
Синтаксис:
MonthName(date[, period_no])
Где date – это дата, которую вы хотите оценить, и желаемое название месяца.
Period_no – это смещение месяца, т.е. если значение равно «0», то возвращается название месяца в заданную дату, но отрицательное значение будет учитывать предыдущий месяц, а положительное значение будет рассматривать следующий месяц, для которого будет возвращена дата.
Например,
monthstart (’15.11.2018 ′) вернет ноябрь 2018 г.
monthstart (’15.11.2018 ′, -1) вернет октябрь 2018 г.
monthstart («15.11.2018», 1) вернет декабрь 2018 г.
x. Monthsstart
Эта функция возвращает дату первого дня месяца, двух месяцев, трех месяцев, квартала или полугодия, соответствующих данной дате.
Синтаксис:
MonthsStart(n_months,date[,period_no[,first_month_of_year]])
Где n_months – целое число, определяющее период в месяцах. Мы используем целые числа: 1 (один месяц), 2 (два месяца), 3 (квартал), 4 (треть года), 6 (полгода) и так далее.
date – это дата, которую вы хотите оценить, и желаемая дата начала месяца.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается начало месяцев, указанных в дате, но отрицательное значение будет учитывать предыдущий период, а положительное значение будет учитывать последующий период, для которого будет возвращена дата.
First_month_of_year – номер месяца, с которого вы хотите начать год. Мы используем его в случае финансового года, который начинается не с
Например,
monthsstart(2, ’10/12/2017′) вернет 01.01.2018.
monthsstart(4, ’15/10/2017, -1) вернет 01.05.2017.
xi. Monthsend
Эта функция возвращает дату последнего дня с точностью до последней миллисекунды месяца, двух месяцев, трех месяцев, квартала или полугодия, соответствующих данной дате.
Синтаксис:
MonthsEnd(n_months,date[,period_no[,first_month_of_year]])
Где n_months – целое число, определяющее период в месяцах. Используются целые числа: 1 (для одного месяца), 2 (для двух месяцев), 3 (для трех месяцев), 4 (для завершения), 6 (для полугодия) и т. д.
date – это дата, которую вы хотите оценить и желаемая дата завершения месяца.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается конец месяцев, указанных в дате, но отрицательное значение будет учитывать предыдущий период, а положительное значение будет учитывать последующий период, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать год. Мы используем его в том случае, если финансовый год начинается не с января.
Например,
monthsstart(2, ’10/12/2017′) вернет 28.02.2018.
monthsstart(4, ’15/10/2017, -1) вернет 31.08.2017.
xii. Monthsname
Эта функция возвращает строку, содержащую диапазон месяцев вместе с годом, соответствующим диапазону, указанному в функции.
Синтаксис:
MonthsName(n_months,date[,period_no[,first_month_of_year]])
Где n_months – целое число, определяющее период в месяцах. Используются целые числа: 1 (для одного месяца), 2 (для двух месяцев), 3 (для трех месяцев), 4 (для завершения), 6 (для полугодия) и т. Д.
date – это дата, которую вы хотите оценить и для которой требуется диапазон месяцев.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается конец месяцев, указанных в дате, но отрицательное значение будет учитывать предыдущий период, а положительное значение будет учитывать последующий период, для которого будет возвращена дата.
First_month_of_year – это номер месяца, с которого вы хотите начать год. Мы используем это в случае финансового года, который начинается не с января.
Например,
monthsname(4, ’19/10/2017′) вернет "сентябрь-декабрь 2017".
monthsname(4, ’19/10/2017′, -1) вернет «май-август 2017 года».
xiii. Weekstart
Эта функция возвращает дату первого дня недели, указанную в дате, указанной в функции, в качестве входных данных.
Синтаксис:
WeekStart(date [, period_no[, first_week_day]])
Где date – это дата, которую вы хотите оценить и желаемая дата начала недели.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается начало недели, указанное в дате, но отрицательное значение будет учитывать предыдущую неделю, а положительное значение будет учитывать последующую неделю, для которой будет возвращена дата.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
- weekstart(17/11/2018) вернет 12.11.2018 как день начала или понедельник недели, указанной в дате.
- weekstart(20/11/2018, -1) вернет 12.11.18 как день начала или понедельник предыдущей недели.
xiv. Weekend
Эта функция возвращает дату последнего дня недели с точностью до последней миллисекунды, указанной в дате, указанной в функции в качестве входных данных.
Синтаксис:
WeekEnd(date [, period_no[, first_week_day]])
Где date – это дата, которую вы хотите оценить и желаемая дата завершения выходных.
Period_no – смещение периода, т.е. если значение равно «0», то возвращается конец недели, указанный в дате, но отрицательное значение будет учитывать предыдущую неделю, а положительное значение будет рассматривать следующую неделю, для которой будет возвращена дата.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
- weekstart(14/11/2018) вернет 18.11.2018 в качестве дня окончания, т.е. воскресенья недели, указанной в дате.
- weekstart(20/11/2018, -1) вернет 18.11.18 как конечный день, то есть воскресенье предыдущей недели.
xv. Weekname
Эта функция возвращает год и номер недели, соответствующие заданной дате.
Синтаксис:
WeekName(date[, period_no[,first_week_day]])
Где, дата – это дата, которую вы хотите оценить, и желаемое название недели.
Period_no – смещение периода, т.е. если значение равно «0», то возвращается название недели, указанное в дате, но отрицательное значение будет учитывать предыдущую неделю, а положительное значение будет учитывать следующую неделю, для которой будет возвращена дата.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
weekname(’12/01/2017′) вернет 2017/02 как год и номер недели.
weekname(’12/01/2013′, -1) вернет 2017/01 как год и номер недели.
xvi. Lunarweekstart
Эта функция возвращает первый день лунной недели с точностью до первой миллисекунды. В Qlik Sense лунными неделями считаются недели, начинающиеся с 1 января.
Синтаксис:
LunarweekStart(date[, period_no[, first_week_day]])
Где date – это дата, которую вы хотите оценить и желаемое начало лунной недели.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается начало недели, указанное в дате, но отрицательное значение будет учитывать предыдущую лунную неделю, а положительное значение будет рассматривать последующую лунную неделю, для которой нужно вернуть дату. для.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
lunarweekstart(’12/01/2017′) вернет 08.01.2017 как дату начала лунной недели, соответствующей заданной дате.
xvii. Lunarweekend
Эта функция возвращает последний день лунной недели с точностью до последней миллисекунды. В Qlik Sense, лунными неделями считаются недели, начинающиеся с 1 января.
Синтаксис:
LunarweekEnd(date[, period_no[, first_week_day]])
где date – это дата, которую вы хотите оценить и желаемая дата завершения лунных выходных.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается конец недели, указанный в дате, но отрицательное значение будет учитывать предыдущую лунную неделю, а положительное значение будет рассматривать последующую лунную неделю, для которой нужно вернуть дату.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
lunarweekstart(’12/01/2017′) вернет 14.01.2017 23:59:59 как дату окончания лунной недели, соответствующей заданной дате.
xviii. Lunarweekname
Эта функция возвращает год и номер недели, соответствующие неделе, указанной в дате, указанной в качестве входных данных.
Синтаксис:
LunarWeekName(date [, period_no[, first_week_day]])
где date – это дата, которую вы хотите оценить и для которой нужно указать название лунной недели.
Period_no – это смещение периода, т.е. если значение равно «0», то возвращается название недели, указанное в дате, но отрицательное значение будет учитывать предыдущую лунную неделю, а положительное значение будет рассматривать последующую лунную неделю, для которой нужно вернуть дату.
First_week_day устанавливает первый день недели. Разные целые числа соответствуют разным дням недели, например, «0» – понедельник, «1» – вторник, «2» – среда, «3» – четверг, «4» – пятница, «5» – суббота и «6» – воскресенье.
Например,
lunarweekstart(’28/03/2012′) вернет 2012/14 как год и номер лунной недели, соответствующей заданной дате.
xix. Daystart
Эта функция возвращает начало дня с точностью до первой миллисекунды, соответствующей времени и дате метки времени в определенное время.
Синтаксис:
DayStart(time[, [period_no[, day_start]])
Где time – это метка времени, которая будет оцениваться.
Period_no – это целое число, которое устанавливает период смещения. Если значение равно «0», тогда мы будем оценивать время и дату, предоставленные в качестве входных данных. Но если значение отрицательное, например -1, то берутся предыдущие дни, а если значение равно 1, то последующие дни берутся для оценки.
Day_start – это дробное значение, которое указывает время, в которое вы хотите начать новый день. По умолчанию это значение составляет 12 часов ночи.
Например,
Daystart(28/03/2017 16:45:00) вернет 29.03.2017 00:00:00.
Daystart(10/12/2017 22:30:20) вернет 11.12.2017 00:00:00 как начало дня.
xx. Dayend
Эта функция возвращает конец дня с точностью до последней миллисекунды, соответствующей времени и дате метки времени в определенное время.
Синтаксис:
DayEnd(time[, [period_no[, day_start]])
где time – это метка времени, которая будет оцениваться.
Period_no – это целое число, которое устанавливает период смещения. Если значение равно «0», тогда будут оцениваться время и дата, указанные в качестве входных данных. Но если значение отрицательное, например, «-1», тогда берутся предыдущие дни, а если значение равно «1», то для оценки берутся последующие дни.
Day_start – это дробное значение, которое указывает время, в которое вы хотите начать новый день. По умолчанию установлено значение 12:00, полночь.
Например,
Dayend(28/03/2017 16:45:00) вернет 29.03.2017 23:59:59.
Dayend(10/12/2017 22:30:20) вернет 11.12.2017 23:59:59 как конец дня.
xxi. Dayname
Эта функция возвращает название дня с точностью до первой миллисекунды, соответствующей времени и дате отметки времени в определенное время.
Синтаксис:
DayName(time[, [period_no[, day_start]])
где time – это метка времени, которая будет оцениваться.
Period_no – это целое число, которое устанавливает период смещения. Если значение равно «0», тогда мы будем оценивать время и дату, предоставленные в качестве входных данных. Но если значение отрицательное, например, «-1», тогда мы берем предыдущие дни, а если значение равно «1», тогда мы берем последующие дни для оценки.
Day_start – это дробное значение, которое указывает время, желаемое начало нового дня. По умолчанию установлено значение 12:00, полночь.
Например,
Daystart(28/03/2017 16:45:00) вернет 29.03.2017.
Daystart(10/12/2017 22:30:20) вернет 11.12.2017 в качестве названия дня.
2. Заключение
Итак, мы завершили нашу главу о функциях начала и завершения Qlik Sense. Это были все функции, которые мы используем в операциях сценария, связанных с датой и временем. Изучите их здесь и используйте в сценариях загрузки данных ваших приложений Qlik Sense.