Power BI 필수 함수

경영정보시각화 자격증 실기 시험 대비 Power BI 필수 함수를 정리하였습니다.
숫자/집계/통계함수
  • J
문자열 함수
  • J
논리 함수
  • J
날짜 함수
  • J
필터 함수
  • J
기타
  • J

시간 인텔리전스 함수

Created by
  • J
    JINA
Created at
• DATEADD: 날짜에 지정된 기간 추가
1.
함수 정의 :
DATEADD 함수는 지정된 날짜를 기준으로
주어진 간격만큼 날짜를 이동할 때 사용되며, Interval에는 DAY, MONTH, QUARTER, YEAR 중 하나를 사용할 수 있습니다.
2.
기본 구문:
DATEADD(<dates>, <number_of_intervals>, <interval>)
3.
매개 변수:
•<dates>: 날짜 필드 또는 날짜 열
•<number_of_intervals>: 이동할 기간 (양수는 미래, 음수는 과거)
•<interval>: 간격(예: DAY, MONTH, QUARTER, YEAR)
4.
예시 코드:
DATEADD(Calendar[Date], -10, DAY)
위의 예시는 Calendar[Date] 열의 날짜에서
10일 전으로 이동한 날짜를 반환합니다.
DATESBETWEEN: 두 날짜 사이의 날짜 반환 / DATESINPERIOD: 기간 내 날짜 반환
DATESBETWEEN 함수와 DATESINPERIOD 함수는 모두 특정 날짜 범위를 지정하는 데 사용되지만, 그 방식과 목적에 차이가 있습니다.
DATESBETWEEN
1.
함수 정의 :
시작 날짜와 끝 날짜를 명시적으로 지정하여 그 사이에 있는 날짜들을 반환합니다.
2.
기본 구문 :
DATESBETWEEN(<날짜 열>, <시작 날짜>, <끝 날짜>)
3.
특징 :
이 함수는
두 날짜 사이의 모든 날짜를 필터링하는 데 유용합니다. 사용자가 직접 범위를 명시적으로 지정해야 합니다.
4.
예시 코드:
DATESBETWEEN(Sales[Date], DATE(2024, 1, 1), DATE(2024, 12, 31))
이 경우
2024년 1월 1일부터 2024년 12월 31일까지의 모든 날짜가 반환됩니다.
DATESINPERIOD
1.
함수 정의 :
지정한 날짜를 기준으로 일정 기간(연, 월, 일 등)을 계산하여 그 범위 내의 날짜들을 반환합니다.
2.
기본 구문 :
DATESINPERIOD(<날짜 열>, <기준 날짜>, <기간>, <기간 단위>)
3.
특징 :
특정 날짜를 기준으로 일정 기간 전후의 날짜 범위를 동적으로 구할 때 사용합니다. 기간 단위는 “DAY”, “MONTH”, “QUARTER”, “YEAR” 등을 사용할 수 있습니다.
4.
예시 코드:
DATESINPERIOD(Sales[Date], TODAY(), -1, YEAR)
이 경우
오늘을 기준으로 지난 1년 동안의 날짜가 반환됩니다.
주요 차이점:
1.
DATESBETWEEN: 사용자가 지정한 두 날짜 사이의 고정된 범위를 반환합니다.
2.
DATESINPERIOD: 기준 날짜를 중심으로 동적인 기간을 설정하여 그 범위 내의 날짜를 반환합니다.
3.
DATESBETWEEN은 명시적 범위를 지정할 때, DATESINPERIOD는 기준점에서 일정 기간을 구할 때 사용됩니다.
DATESMTD: 월 기준 누적 날짜 반환
1.
함수 정의 :
DATESMTD는
특정 달(month)의 첫날부터 특정 날짜까지의 날짜 범위를 반환하는 함수입니다. “MTD”는 “Month To Date”를 의미하며, 이는 해당 월의 누적 데이터를 계산하는 데 자주 사용됩니다.
2.
기본 구문:
DATESMTD(<dates>)
3.
매개 변수 :
•<dates>: 날짜 필드 또는 날짜 열을 입력해야 합니다. 이는 Calendar 테이블의 날짜 열이나 날짜와 관련된 열이 될 수 있습니다.
•<반환값>:
지정된 날짜가 포함된 해당 월의 첫날부터 지정된 날짜까지의 날짜 범위를 반환하는 테이블입니다.
4.
예시 코드 :
만약
Date 테이블에서 Date 열이 있고 오늘이 2024년 10월 16일이라고 가정하면, DATESMTD('Date'[Date]) 함수는 2024년 10월 1일부터 2024년 10월 16일까지의 날짜를 반환합니다. 이를 통해 월간 누적 데이터를 분석할 수 있습니다.
CALCULATE(SUM(Sales[SalesAmount]), DATESMTD(Calendar[Date]))
이 예제는
2024년 10월의 월 초부터 10월 16일까지의 SalesAmount 합계를 반환 합니다.
5.
주요 용도 :
월간 누적 매출, 비용 등과 같은 월간 누적 성과 지표를 계산할 때 유용합니다.
DATESQTD: 분기 기준 누적 날짜 반환
1.
함수 정의 :
DATESQTD 함수는
특정 연도의 분기 기준으로 누적된 날짜 범위를 반환합니다. 즉, 주어진 날짜를 기준으로 해당 분기 시작일부터 그 날짜까지의 날짜들을 반환하는 함수입니다.
2.
기본 구문 :
DATESQTD(<dates>)
3.
매개 변수 :
•<dates> : 날짜를 포함한 열 또는 날짜 테이블입니다.
4.
기능 설명 :
•DATESQTD 함수는 “쿼터” 또는 “분기” 단위로 누적된 기간을 구하는 데 사용됩니다.
•예를 들어, 만약 현재 날짜가 2024년 5월 15일이라면,
DATESQTD 함수는 2024년 4월 1일부터 2024년 5월 15일까지의 날짜 범위를 반환합니다.
5.
예시 코드 :
DATESQTD('Date'[Date])
이 함수는 날짜 테이블의 Date 열을 기준으로
현재 분기의 시작일부터 해당 날짜까지의 범위를 반환합니다.
6.
요약 :
DATESQTD는 주로 누적 매출, 누적 비용 등의 계산을 위해 사용되며,
특정 분기 내 누적 데이터를 분석할 때 매우 유용합니다.
DATESYTD: 연도 기준 누적 날짜 반환
1.
함수 정의 :
DATESYTD 함수는
주어진 날짜를 기준으로 해당 연도의 시작일부터 그 날짜까지의 모든 날짜 범위를 반환합니다. 즉, 연 단위 누적 데이터를 계산할 때 유용한 함수입니다.
2.
기본 구문 :
DATESYTD(<dates>[, <year_end_date>])
3.
매개 변수 :
•<dates> : 날짜를 포함한 열 또는 날짜 테이블입니다.
•<year_end_date> (선택):
회계연도 종료일을 지정할 수 있습니다. 기본적으로는 12월 31일로 설정되어 있지만, 회계연도가 다른 경우 직접 지정할 수 있습니다. 형식은 “MM/DD”입니다.
4.
기능 설명 :
•DATESYTD 함수는
“연도” 단위로 누적된 기간을 계산하는 데 사용됩니다.
•예를 들어,
주어진 날짜가 2024년 10월 16일이라면, DATESYTD 함수는 2024년 1월 1일부터 2024년 10월 16일까지의 날짜 범위를 반환합니다.
•회계 연도가 12월이 아닌 3월, 6월 등의 특정 월에 종료되는 경우, year_end_date 인수를 이용해 맞춤 설정할 수 있습니다.
5.
예시 코드 :
(1)
기본적인 사용:
DATESYTD('Date'[Date])
이 함수는 기본적으로 1월 1일부터 주어진 날짜까지의 범위를 반환합니다.
(2)
회계연도가 6월 30일에 끝나는 경우:
DATESYTD('Date'[Date], "06/30")
이 함수는
7월 1일부터 주어진 날짜까지의 범위를 반환하게 됩니다.
(3) 지정된 날짜가 아닌 열이
2024년도 날짜들로 되어 있다면, DATESYTD 함수는 해당 열의 각 날짜를 기준으로 그 날짜까지의 연간 누적 날짜 범위를 반환하게 됩니다. 즉, 그 열에 있는 모든 날짜에 대해 자동으로 **해당 연도의 시작(1월 1일)**부터 그 날짜까지의 날짜 범위를 계산하게 됩니다.
DATESYTD('Date'[Date])
만약 'Date' 열이 2024년 1월 1일부터 2024년 12월 31일까지의 날짜를 포함하고 있다면, DATESYTD 함수는 이 열에 있는 각 날짜에 대해 연 누적 범위를 반환하게 됩니다.
2024년 1월 10일이 있으면, 그 날짜에 대해 2024년 1월 1일부터 1월 10일까지의 날짜 범위를 계산.
2024년 6월 15일이 있으면, 2024년 1월 1일부터 6월 15일까지의 날짜 범위를 계산.
• 마지막으로
2024년 12월 31일이 있으면, 2024년 1월 1일부터 12월 31일까지의 날짜 범위를 반환.
즉,
DATESYTD는 각 날짜에 대해 해당 연도의 시작일부터 그 날짜까지 누적된 날짜 범위를 반환하는 방식으로 동작합니다.
6.
요약 :
DATESYTD 함수는 주로
연 누적 매출, 연 누적 비용 등의 누적 데이터를 계산할 때 매우 유용하며, 특정 연도의 시작부터 누적된 성과를 분석하는 데 자주 사용됩니다.
• FIRSTDATE: 첫 번째 날짜 반환
1.
함수 정의 :
FIRSTDATE는
주어진 날짜 열에서 **가장 이른 날짜(첫 번째 날짜)**를 반환하는 함수입니다. 주로 시간 지표를 사용한 분석에서 많이 쓰입니다. 이 함수는 날짜 테이블이나 날짜 열에 적용되어, 주어진 필터 컨텍스트 내에서 가장 앞선 날짜를 찾아낼 때 유용합니다.
2.
기본 구문 :
FIRSTDATE(<dates>)
3.
매개 변수 :
• dates: 날짜 열 또는 날짜를 포함하는 테이블 식입니다.
반환값
• 주어진 날짜 열에서 가장 이른 날짜를 반환합니다. 필터 컨텍스트에 따라 다른 결과가 나올 수 있습니다. 만약 필터가 없으면 해당 열 전체에서 첫 번째 날짜를 반환합니다.
4.
예시 코드 :
FIRSTDATE(Sales[OrderDate])
이 함수는 Sales 테이블의
OrderDate 열에서 필터된 컨텍스트 내에서 가장 이른 주문 날짜를 반환합니다.
5.
요약 :
필터 컨텍스트에 따라 다르게 작동합니다. 즉, 보고서의 필터, 슬라이서 등에 의해 달라질 수 있습니다.
빈 테이블이나 날짜가 없는 경우에는 BLANK를 반환합니다.
6.
사용 사례 :
정 기간 내에서
첫 거래 날짜를 알아내거나, 첫 데이터를 기준으로 계산을 해야 할 때 유용합니다.
SAMEPERIODLASTYEAR: 전년도 동일 기간 반환
1.
함수 정의 :
SAMEPERIODLASTYEAR 함수는 재 보고 있는 기간과 동일한 기간을 전년도에서 가져오는 역할을 합니다. 전년 대비 성과를 비교할 때 많이 사용됩니다.
2.
기본 구문 :
SAMEPERIODLASTYEAR(<dates>)
3.
매개변수 :
<dates>: 날짜가 포함된 열입니다. 이 열은 시간/날짜 형식이어야 하며, 날짜 테이블을 기반으로 사용해야 합니다.
반환값:
이 함수는 전년도 동일 기간의 날짜가 포함된 단일 열 테이블을 반환합니다. 즉, 사용자가 보고 있는 기간(예: 2024년 1월)을 기준으로 동일한 기간(2023년 1월)의 날짜 테이블을 반환합니다.
4.
예시 코드 :
2024년 1월 1일부터 1월 31일까지의 매출을 보고 있는 경우, 이 함수를 사용하면 전년도인 2023년 1월 1일부터 1월 31일까지의 데이터를 가져올 수 있습니다.
매출_전년도 = CALCULATE(SUM(매출[금액]), SAMEPERIODLASTYEAR(날짜[날짜]))
위 코드에서는 CALCULATE 함수와 SAMEPERIODLASTYEAR를 사용해, 매출 테이블에서 전년도 동일 기간의 매출 합계를 계산합니다.
이 함수는 내부적으로 DATEADD 함수를 사용하는 것과 동일하게 동작합니다. 즉, DATEADD(<dates>, -1, YEAR)과 같은 결과를 반환합니다. 단, SAMEPERIODLASTYEAR 함수는 연도를 기준으로만 작동하므로, 현재 선택된 날짜 범위와 전년도 동일 날짜 범위를 비교할 때 적합합니다.
5.
사용 시 주의사항 :
날짜 테이블이 잘 구성되어 있어야 하며, 연속적인 날짜 값을 가져야 함.
SAMEPERIODLASTYEAR 함수는 년 단위로 기간을 비교합니다.
월말이 같은 경우에만 제대로 작동하므로 날짜 범위가 달라지면 원하는 결과가 나오지 않을 수 있습니다.
6.
활용 예시 :
매출 데이터에서 전년도와의 비교가 필요할 때 이 함수를 사용하면, 전년 대비 매출 성장을 빠르게 파악할 수 있습니다.
이 함수는 전년도와의 성과 비교나 트렌드 분석에 매우 유용하며, 특히 연도별 성장을 추적하는 데 자주 사용됩니다.