본문 바로가기
카테고리 없음

spotfire 함수 정리

by WelcomeBro 2023. 3. 20.
반응형

문자열의 날짜를 Date 형식으로 구문 분석합니다. 첫 번째 인수는 문자열이거나 날짜를 포함하는 문자열 컬럼입니다.

두 번째 인수는 날짜를 작성하는 방법을 설명하는 형식 문자열이고 세 번째(선택 항목) 인수는 문화 코드입니다.

예:
ParseDate("2013-09-17", "yyyy-MM-dd")
ParseDate("17-okt-2013","dd-MMM-yyyy","sv-SE")

 

날짜, 시간 또는 날짜/시간에 간격을 추가합니다. 이 메서드는 시간대를 추가하거나, 지정된 날짜 또는 시간 부분을 나타내는 정수를 추가할 수 있습니다.

시간대를 추가할 경우 날짜/시간 컬럼과 시간대 컬럼의 두 인수가 필요합니다.

정수 값을 날짜 또는 시간 부분에 추가하려면 세 개의 인수가 사용됩니다. Arg1은 추가할 부분을 설명하는 문자열이고, Arg2는 추가할 부분의 수를 포함하는 숫자이고, Arg3은 날짜, 시간 또는 날짜/시간 컬럼입니다.

Arg1에 대해 유효한 인수는 다음과 같습니다.
'year' 또는 'yy' - 연도
'quarter' 또는 'qq' - 분기
'month' 또는 'mm' - 월
'day' 또는 'dd' - 일
'week' 또는 'wk' - 주
'hour' 또는 'hh' - 시간
'minute' 또는 'mi' - 분
'second' 또는 'ss' - 초
'millisecond' 또는 'ms' - 밀리초

예: 
DateAdd([Date Column], [TimeSpan Column])
DateAdd('year', 2, [Date Column])
DateAdd('month', 1, [Date Column])

 

------------------------------------------------------------------------------------------------------------

 

컬럼 또는 값에서 시간대를 만듭니다. 단일 인수를 지정한 경우 입력 컬럼은 String 또는 TimeSpan 형식입니다. String을 지정한 경우 시간대를 "[-]d.h:m:s.ms" 형식으로 기록해야 합니다. 
인수를 5개 지정한 경우 첫 번째 인수는 일, 두 번째 인수는 시간, 세 번째 인수는 분, 네 번째 인수는 초, 다섯 번째 인수는 밀리초입니다. 처음 네 개의 인수는 정수이고 마지막 인수는 실제 값입니다.

예:
TimeSpan([Column])
TimeSpan("247.5:17:11.5002")
TimeSpan(247, 05, 17, 11, 500.2)

 

DateAdd([PROBE_STARTTIME],TimeSpan(0,1,30,0,0))

1시간 30분 추가

 

------------------------------------------------------------------------------------------------------------

 

컬럼 또는 값에서 시간/날짜를 만듭니다. 단일 인수를 지정한 경우 입력 컬럼은 String 또는 Date 형식입니다. String을 지정한 경우 Spotfire에서 인식할 수 있는 형식으로 날짜를 기록하고 날짜의 모든 부분(년, 월, 일)을 제공해야 합니다. Date를 지정한 경우 시간 부분은 00:00:00으로 설정됩니다. 
7개의 정수 인수를 지정한 경우 첫 번째 인수는 연도이고, 두 번째 인수는 월이고, 세 번째 인수는 월간 일자이고, 네 번째 인수는 시간이고, 다섯 번째 인수는 분이고, 여섯 번째 인수는 초이고, 일곱 번째 인수는 밀리초입니다.

예:
DateTime([Column])
DateTime(2009, 05, 17, 11, 30, 20, 4)

 

------------------------------------------------------------------------------------------------------------

 

문자열의 날짜/시간 정보를 DateTime 형식으로 구문 분석합니다. 첫 번째 인수는 문자열이거나 날짜/시간 정보를 포함하는 문자열 컬럼입니다.

두 번째 인수는 정보를 작성하는 방법을 설명하는 형식 문자열이고 세 번째(선택 항목) 인수는 문화 코드입니다.

예:
ParseDateTime("2013-09-17 10:30", "yyyy-MM-dd h:mm")
ParseDateTime("17-okt-2013 13:25","dd-MMM-yyyy HH:mm","sv-SE")

 

------------------------------------------------------------------------------------------------------------

ParseDateTime([측정시간 2],'yyyy/MM/dd HH:mm:ss:fff')

ParseDateTime([측정시간 2],'yyyy/MM/dd HH:mm:ss:ff')

 

------------------------------------------------------------------------------------------------------------

두 날짜, 시간 또는 날짜/시간 컬럼 간의 차이를 계산합니다. 결과는 시간대 또는 지정된 시간 부분을 나타내는 실제 값(예: 일 수)으로 표시됩니다. 

두 인수를 사용할 경우 첫 번째 인수는 중지 날짜 컬럼이고 두 번째 인수는 시작 날짜 컬럼입니다. 이 경우 결과는 전체 차이를 보여주는 시간대 값입니다.

세 개의 인수를 사용할 경우 첫 번째 인수는 비교할 부분이어야 합니다. 두 번째 인수는 시작 날짜 컬럼이고 세 번째 인수는 중지 날짜 컬럼입니다. 연산 결과는 실제 값입니다.

Arg1에 대해 유효한 인수는 다음과 같습니다.
'year' 또는 'yy' - 연도
'quarter' 또는 'qq' - 분기
'month' 또는 'mm' - 월
'day' 또는 'dd' - 일
'week' 또는 'wk' - 주
'hour' 또는 'hh' - 시간
'minute' 또는 'mi' - 분
'second' 또는 'ss' - 초
'millisecond' 또는 'ms' - 밀리초 

예:
DateDiff([Order Date], [Delivery Date])
DateDiff('day', [Order Date], [Delivery Date])

 

DateDiff('dd', [Start_TIME],[End_TIME])

 

------------------------------------------------------------------------------------------------------------

 

Arg1=true이면 Arg2를 반환하고 Arg1=false이면 Arg3를 반환합니다. Arg1은 부울 형식이며 일반적으로 비교의 결과입니다. Arg2 및 Arg3는 모든 형식일 수 있지만 둘 모두 같은 형식이거나 null이어야 합니다.

두 번째 및 세 번째 인수는 행의 하위 집합만 처리하며 이는 모든 컬럼 기반 및 누적 방법에 영향을 미칩니다. 자세한 내용은 '로컬 함수'에 대한 도움말을 참조하십시오.

예: 
If(1 < 2, "Small", "Big")
If([Column] Is Null,"0","hasvalue")
If([IsSmoker], Avg([Age]), Avg([Age]))

 

If([구입처] = "온라인"," 온라인 판매","오프라인 판매")

 

날짜, 시간 또는 날짜/시간의 지정된 부분을 반환합니다. 첫 번째 인수는 가져올 날짜 부분을 설명하는 문자열이고 두 번째 인수는 날짜입니다. 계산의 기본 데이터는 정수지만 일부 인수('mm', 'qq', 'dw') 출력 형식은 지역별 설정에 따라 결정됩니다.

첫 번째 인수에 유효한 인수:
'year' 또는 'yy' - 년.
'quarter' 또는 'qq' - 분기.
'month' 또는 'mm' - 월.
'day of year' 또는 'dy' - 연간 일자.
'day' 또는 'dd' - 일.
'year and week' 또는 'yywk' - 년 및 주.
'week' 또는 'wk' - 주.
'day of week' 또는 'dw' - 요일.
'hour' 또는 'hh' - 시간.
'minute' 또는 'mi' - 분.
'second' 또는 'ss' - 초.
'millisecond' 또는 'ms' - 밀리초.

예: 
DatePart('year', [Date Column])

 

------------------------------------------------------------------------------------------------------------

case 문은 두 가지 형태로 사용됩니다.

간단:
case Arg1 when Arg2 then Arg3 else Arg4 end

Arg1 표현식을 평가하여 Arg1이 Arg2와 같으면 Arg3이 반환됩니다. 
여러 when/then 표현식을 입력할 수 있으며 왼쪽부터 오른쪽으로 평가됩니다.

검색됨:
case when Arg1 then Arg2 else Arg3 end

Returns Arg2 if Arg1=true, and Arg3 if Arg1=false. 
여러 when/then 표현식을 입력할 수 있으며 왼쪽부터 오른쪽으로 평가됩니다.

예:
Case when 1 < 2 then "a" when 1 < 3 then "b" else "c" end
Case [Column] when 3 then "a" when 2 then "b" else "c" end

 

case [구입처]
when "온라인" then "온라인 판매"
when "백화점" then "오프라인 판매"
when "하이마트" then "오프라인 판매"
else null end

 

case
when [나이]<30 then "10~20대"
when [나이]<50 then "30~40대"
when [나이]<60 then "50대"
else "60대 이상" end

 

------------------------------------------------------------------------------------------------------------

 

선택된 컬럼의 값에 대한 정수 값 순위를 반환합니다. 첫 번째 인수는 순위를 지정할 컬럼입니다. 

선택적 인수는 오름차순(기본값) 순위를 사용할지 내림차순 순위를 사용할지 여부를 결정하는 문자열입니다. 가장 높은 값이 순위 1을 검색하도록 하려면 인수 "desc"를 사용하고, 가장 낮은 값이 순위 1을 검색하도록 하려면 "asc"를 사용합니다.

선택적 인수 값에 따라 동일이 순위 값으로 지정됩니다. 
"ties.method=minimum"(기본값), 
"ties.method=maximum" 또는 
"ties.method=first"

컬럼을 개별적으로 순위 지정된 범주로 분할해야 하는 경우 추가 컬럼 인수(선택적)를 사용할 수 있습니다.

예:
Rank([Sales])
Rank([Sales], "desc", [Region])
Rank([Sales], "ties.method=first")

 

------------------------------------------------------------------------------------------------------------

선택된 컬럼의 값에 대한 정수 값 순위를 반환합니다. 첫 번째 인수는 순위를 지정할 컬럼입니다. 

선택적 인수는 오름차순(기본값) 순위를 사용할지 내림차순 순위를 사용할지 여부를 결정하는 문자열입니다. 가장 높은 값이 순위 1을 검색하도록 하려면 인수 "desc"를 사용하고, 가장 낮은 값이 순위 1을 검색하도록 하려면 "asc"를 사용합니다.

동일한 순위 값에는 동률이 지정되며, 가장 높은 순위 번호는 컬럼에 있는 고유한 값의 수와 같습니다.

컬럼을 개별적으로 순위 지정된 범주로 분할해야 하는 경우 추가 컬럼 인수(선택적)를 사용할 수 있습니다.

예:
DenseRank([Sales])
DenseRank([Sales], "desc", [Region])

 

Rank([자료수(도서)],'desc',[시군구명])

------------------------------------------------------------------------------------------------------------

OVER는 기본값이 아닌 다른 창에 대해 집계를 계산해야 함을 지정하기 위해 집계 다음에 사용할 수 있는 키워드입니다. OVER 키워드는 참조되는 계층의 노드를 기준으로 데이터를 그룹화하는 방법을 지정하는 OVER 함수와 항상 함께 사용됩니다.

예:
Sum([Sales]) OVER (AllPrevious([Axis.X]))

 

------------------------------------------------------------------------------------------------------------

UniqueCount([도서관유형]) OVER ([시군구명])

 

------------------------------------------------------------------------------------------------------------

시각화의 각 계산된 행에 대한 고유한 지시자를 반환합니다. 필터링 또는 마킹을 수행하면 이 지시자가 변경됩니다.

예: 
RowId()

------------------------------------------------------------------------------------------------------------

현재 노드와 동일한 수준에 있는 이전 노드를 사용하여 현재 노드의 결과를 이전 노드의 결과와 비교합니다. 이전 노드가 없는 경우, 즉 현재 노드가 현재 수준의 첫 번째 노드인 경우에는 결과 하위 집합에 행이 포함되지 않습니다.
선택적인 두 번째 인수를 사용하면 탐색할 단계 수를 지정할 수 있습니다. 두 번째 인수는 정수여야 합니다(0 또는 음수일 수도 있음). 

사용자 지정 표현식에는 축에 대한 참조를 포함할 수 있고 계산된 컬럼에서는 컬럼 또는 고정된 계층을 참조만 할 수 있습니다.

사용자 지정 표현식의 예:
Sum([Sales]) - Sum([Sales]) OVER (Previous([Axis.X]))

Count() OVER Previous([Axis.X], 2)

계산된 컬럼의 예:
Max([Sales]) OVER (Intersect([Category],Previous([Year])))

------------------------------------------------------------------------------------------------------------

Sum([판매금액]) -  //현재월
Sum([판매금액]) OVER (Previous([Axis.X]))  //전월

------------------------------------------------------------------------------------------------------------

현재 노드를 계층의 동일한 수준에 있는 다음 노드와 비교합니다. 다음 노드가 없는 경우, 즉 현재 노드가 현재 수준의 마지막 노드인 경우에는 결과 하위 집합에 행이 포함되지 않습니다.
선택적인 두 번째 인수를 사용하면 탐색할 단계 수를 지정할 수 있습니다. 두 번째 인수는 정수여야 합니다(0 또는 음수일 수도 있음). 

사용자 지정 표현식에는 축에 대한 참조를 포함할 수 있고 계산된 컬럼에서는 컬럼 또는 고정된 계층을 참조만 할 수 있습니다.

사용자 지정 표현식의 예:
Sum([Sales]) - Sum([Sales]) OVER (Next([Axis.X]))

Count() OVER Next([Axis.X], 2)

계산된 컬럼의 예:
Max([Sales]) OVER (Intersect([Category],Next([Year])))

-----

all previous 누적

 

 

참조된 계층의 모든 노드를 사용합니다. 현재 노드를 둘 이상의 계층과 교차시킬 때 유용할 수 있습니다. 예를 들어 매월 여러 제품 범주의 상대적 판매량을 표시할 수 있습니다.

사용자 지정 표현식에는 축에 대한 참조를 포함할 수 있고 계산된 컬럼에서는 컬럼 또는 고정된 계층을 참조만 할 수 있습니다.

사용자 지정 표현식의 예:
Sum([Sales]) / Sum([Sales]) OVER (Intersect(All([Axis.Color]), [Axis.X]))

Sum([Sales]) / Sum([Sales]) OVER (All([Axis.X])) * 100

계산된 컬럼의 예:
Sum([Sales]) OVER All([Date])

Max([Sales]) OVER Intersect([Category], All([Date]))

 

---

서로 다른 계층의 노드에서 교차된 행을 반환합니다. AllPrevious 및 All도 참조하십시오.

사용자 지정 표현식에서는 축에 대한 참조를 포함할 수 있고 계산된 컬럼에서는 컬럼 또는 고정된 계층을 참조만 할 수 있습니다.

사용자 지정 표현식의 예:
Intersect(Parent([Axis.X]), All([Axis.Color]), Parent([Axis.Rows]), …)

 

 

구매품목 별로 비율을 나누기 위해 하는 것(교차되어 있는것)

Sum([수량]) / 
Sum([수량]) OVER (Intersect([구매품목],All([Axis.X])))


계산된 컬럼의 예:
Sum([Sales]) OVER Intersect([Category], AllPrevious([Date]))

반응형