이 함수는 time 인수에 포함된 날의 첫 번째 밀리초가 있는 타임스탬프에 해당하는 값을 반환합니다. 기본 출력 형식은 스크립트에 설정된 TimestampFormat입니다.
구문:
DayStart(time[, [period_no[, day_start]])
반환 데이터 유형: dual
인수
인수
설명
time
평가할 타임스탬프입니다.
period_no
period_no는 정수 또는 정수로 처리되는 표현식이며, 값 0은 time을 포함하는 날을 나타냅니다. period_no가 음수 값일 경우 이전 날, 양수 값일 경우 이후 날을 나타냅니다.
day_start
하루가 자정에 시작되지 않도록 지정하려면 day_start에 하루의 분위수로 오프셋을 지정합니다. 예를 들어 0.125는 오전 3:00을 나타냅니다.
즉, 오프셋을 만들려면 시작 시간을 24시간으로 나눕니다. 예를 들어, 하루를 오전 7시에 시작하도록 하려면 분수 7/24를 사용합니다.
사용 시기
daystart() 함수는 일반적으로 사용자가 지금까지 경과된 날짜의 분수를 사용하여 계산하려고 할 때 표현식의 일부로 사용됩니다. 예를 들어, 지금까지 하루에 직원이 받은 총 급여를 계산하는 데 사용할 수 있습니다.
이 예에서는 타임스탬프 형식 'M/D/YYYY h:mm:ss[.fff] TT'을 사용합니다. 타임스탬프 형식은 데이터 로드 스크립트 맨 위에서 SET TimeStamp 문으로 지정됩니다. 이 예의 형식을 필요에 따라 변경하십시오.
함수 예
예
결과
daystart('01/25/2013 4:45:00 PM')
1/25/2013 12:00:00 AM를 반환합니다.
daystart('1/25/2013 4:45:00 PM', -1)
1/24/2013 12:00:00 AM를 반환합니다.
daystart('1/25/2013 16:45:00',0,0.5
)
1/25/2013 12:00:00 PM를 반환합니다.
국가별 설정
달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다. YYYY/MM/DD. 날짜 형식은 데이터 로드 스크립트의 SET DateFormat 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다. 자세한 내용은 앱 및 스크립트에 대한 지역 설정 수정를 참조하십시오.
앱의 기본 지역 설정은 사용자 프로필을 기반으로 합니다. 이러한 국가별 형식 설정은 Qlik Cloud 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Cloud는 사용 중인 브라우저와 동일한 언어로 표시됩니다.
기본 TimeStampFormat 시스템 변수((M/D/YYYY h:mm:ss[.fff] TT)가 사용됩니다.
daystart() 함수를 사용하여 SOD_timestamp라는 추가 필드를 만드는 선행 LOAD입니다.
날짜를 제외하고 함수에 추가 매개 변수가 제공되지 않습니다.
로드 스크립트
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';
Calendar:
Load
date,
daystart(date) as SOD_timestamp
;
Load
date
Inline
[
date
03/11/2022 1:47:15 AM
03/12/2022 4:34:58 AM
03/13/2022 5:15:55 AM
03/14/2022 9:25:14 AM
03/15/2022 10:06:54 AM
03/16/2022 10:44:42 AM
03/17/2022 11:33:30 AM
03/18/2022 12:58:14 PM
03/19/2022 4:23:12 PM
03/20/2022 6:42:15 PM
03/21/2022 7:41:16 PM
];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
date
SOD_timestamp
결과 테이블
date
SOD_timestamp
03/11/2022 1:47:15 AM
3/11/2022 12:00:00 AM
03/12/2022 4:34:58 AM
3/12/2022 12:00:00 AM
03/13/2022 5:15:55 AM
3/13/2022 12:00:00 AM
03/14/2022 9:25:14 AM
3/14/2022 12:00:00 AM
03/15/2022 10:06:54 AM
3/15/2022 12:00:00 AM
03/16/2022 10:44:42 AM
3/16/2022 12:00:00 AM
03/17/2022 11:33:30 AM
3/17/2022 12:00:00 AM
03/18/2022 12:58:14 PM
3/18/2022 12:00:00 AM
03/19/2022 4:23:12 PM
3/19/2022 12:00:00 AM
03/20/2022 6:42:15 PM
3/20/2022 12:00:00 AM
03/21/2022 7:41:16 PM
3/21/2022 12:00:00 AM
위의 표에서 볼 수 있듯이 데이터 집합의 각 날짜에 대해 하루의 종료 타임스탬프가 생성됩니다. 타임스탬프는 시스템 변수 형식 TimestampFormat M/D/YYYY h:mm:ss[.fff] TT입니다.
예 2 – period_no
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Fines라는 테이블에 로드되는 주차 벌금이 포함된 데이터 집합. 데이터 집합에는 다음 필드가 포함됩니다.
id
due_date
number_plate
amount
daystart() 함수를 사용하고 세 가지 매개 변수(time, period_no 및 day_start)를 모두 제공하는 선행 LOAD. 이 선행 LOAD는 다음과 같은 두 개의 새 날짜 필드를 만듭니다.