Loading

시간에 따른 유효 레코드 표시

게시 일자: Jul 28, 2023
과업
각 레코드에 시작 날짜와 끝 날짜가 있는 경우 시간별로 유효 레코드를 표시하는 방법

예를 들어 각 고객에 대한 시작/끝 날짜가 포함된 첨부된 데이터 집합을 사용할 경우 2021년 8월 4일에 유효했던 고객은 몇 명인가요?
단계
옵션 1: 날짜 스캐폴딩 사용
원래 데이터 연결에 조인할 모든 가능한 날짜의 목록이 포함된 테이블을 만듭니다. 이 예에서 테이블의 이름은 "Date List(날짜 목록)"입니다.
  1. Data > {original data source} > Edit Data Source...(데이터 > {원래 데이터 원본} > 데이터 원본 편집...)로 이동합니다.
  2. "Add"(추가)를 클릭하고 "Date List"(날짜 목록) 테이블에 연결합니다.
  3. "Date List(날짜 목록)" 테이블을 캔버스 영역에 끌어 놓습니다.
  4. Edit Relationship(관계 편집) 대화 상자에서 다음을 수행합니다.
    1. Contracts(계약)에서 [Open Date](시작 날짜)를 선택합니다.
    2. Date List(날짜 목록)에서 [Date](날짜)를 선택합니다.
    3. 등호를 클릭하고 <=를 선택하고 Close(닫기)를 클릭합니다.
    4. "Add more fields"(파일 더 추가)를 클릭합니다.
    5. Contracts(계약)에서 "Create Relationship Calculation..."(관계 계산 만들기...)을 클릭합니다.
    6. Relationship Calculation(관계 계산) 대화 상자에 IFNULL([Close Date],TODAY())를 입력하고 OK(확인)를 클릭합니다.
    7. Date List(날짜 목록)에서 [Date](날짜)를 선택합니다.
    8. 등호를 클릭하고 >=를 선택합니다.
  5. 새 워크시트로 이동합니다.
  6. [Date(날짜)]를 마우스 오른쪽 단추로 클릭하고 열 선반에 끌어 놓습니다.
  7. 필드 놓기 대화 상자에서 Date (continuous)(날짜(연속형))를 선택하고 OK(확인)를 클릭합니다.
  8. [Contracts (Count)](계약(개수))를 행 선반에 끌어 놓습니다.
 
옵션 2: Tableau Prep Builder를 사용하여 간격 채우기 

Tableau Prep Builder 2021.3.1부터 시작 및 종료 날짜 사이에 매일(또는 다른 날짜 수준)에 해당하는 행을 추가하는 단계를 만들 수 있습니다. 지침은 순차적 데이터의 간격 채우기를 참조하세요. 

Tableau Prep Builder

  1. 원래 데이터 원본에 연결합니다.
  2. Contracts(계약) 테이블을 캔버스에 끌어 놓습니다.
  3. 입력 단계 위로 마우스오버하고 더하기 부호를 클릭하고 Clean Step(정리 단계)을 선택합니다.
  4. Clean 1(정리 1)을 클릭하여 단계를 선택합니다.
  5. 정리 단계에서 Create Calculated Field(계산된 필드 만들기)를 클릭합니다.
  6. Add Field(필드 추가) 대화 상자에서 다음을 수행합니다.
    1. 필드 끝 날짜 이름 지정
    2. 다음 수식 입력: DATE(IFNULL([Close Date],TODAY()))
  7. Clean 1(정리 1)에서 New Rows(새 행) 단계를 추가합니다.
  8. New Rows 1(새 행 1)에서 다음을 수행합니다.
    1. 두 필드에서 Value(값) 범위 선택
    2. Open Date <= Close Date(시작 날짜 <= 끝 날짜) 선택
    3. 필드 이름을 Date(날짜)로 지정
    4. 새 행에 있어야 하는 What 값에 대해, 이전 행에서 복사(Copy from previous row) 선택
  9. 데이터를 출력합니다.


Tableau Desktop

  1. 출력에 연결합니다.
  2. [Date(날짜)]를 마우스 오른쪽 단추로 클릭하고 열 선반에 끌어 놓습니다.
  3. 필드 놓기 대화 상자에서 Date (continuous)(날짜(연속형))를 선택하고 OK(확인)를 클릭합니다.
  4. [Extract (Count)](추출(개수))를 행 선반에 끌어 놓습니다.

옵션 3: 계산 만들기
클릭하여 해결 방법 확장

1단계: 기간의 시작 정의

  1. Analysis(분석) > Create Calculated Field(계산된 필드 만들기)를 선택합니다. 
  2. 필드 이름을 Start Date(시작 날짜)로 지정하고 다음 계산을 입력한 후 OK(확인)를 클릭합니다. 
    DATETRUNC('week',WINDOW_MIN(MIN([Date])))
  3. Analysis(분석) > Create Calculated Field(계산된 필드 만들기)를 선택합니다.
  4. 필드 이름을 Running Date로 지정하고 다음 계산을 입력한 후 확인을 클릭합니다.
    DATEADD('week',(INDEX() - 1),[Start Date])
클릭하여 단계 확장

2단계: 기간의 지속 시간 정의 

  1. Analysis(분석) > Create Calculated Field(계산된 필드 만들기)를 선택합니다.
  2. 필드 이름을 isActive로 지정하고 다음 수식을 입력한 후 OK(확인)를 클릭합니다. 

    IF [Running Date] >= WINDOW_MAX(MAX([Date]))
    AND [Running Date] <= WINDOW_MAX(MAX([Closed Date]))
    THEN 1
    ELSE 0
    END

클릭하여 단계 확장

3단계: 유효 항목 확인

  1. Analysis(분석) > Create Calculated Field(계산된 필드 만들기)를 선택합니다.
  2. 필드 이름을 Number of Active Contracts(유효 계약 수)로 지정하고 다음 수식을 입력한 후 OK(확인)를 클릭합니다. 
    IF INDEX() = 1 THEN WINDOW_SUM([isActive])END
클릭하여 단계 확장

4단계: 뷰 작성 

  1. Date(날짜)Columns(열)에 끌어 놓습니다. 
  2. Columns(열)에서 Date(날짜)를 마우스 오른쪽 단추로 클릭하고 Week Number(주 번호)를 선택합니다.
  3. Date(날짜)를 다시 마우스 오른쪽 단추로 클릭하고 Discrete(불연속형)를 선택합니다.
  4. 주 머리글을 마우스 오른쪽 단추로 클릭하고 Show Missing Values(누락된 값 표시)를 선택합니다.
  5. Client(클라이언트)Detail(세부 정보)에 끌어 놓습니다.
클릭하여 단계 확장

5단계: 테이블 계산 구성 및 뷰 완성 

  1. Start Date(시작 날짜)Detail(세부 정보)에 끌어 놓습니다. 
  2. Detail(세부 정보)에서 Start Date(시작 날짜)를 마우스 오른쪽 단추로 클릭하고 Edit Table Calculation(테이블 계산 편집)을 선택합니다. 
    • Compute Using(다음을 사용하여 계산)에서 Specific Dimensions(특정 차원)를 선택합니다.
    • Week of Date(날짜 주)Client(클라이언트) 옆의 상자를 선택한 후 Table Calculation(테이블 계산) 대화 상자를 닫습니다. 
  3. Running DateDetail(세부 정보)에 끌어 놓습니다. 
  4. Detail(세부 정보)에서 Running Date를 마우스 오른쪽 단추로 클릭하고 Edit Table Calculation(테이블 계산 편집)을 선택합니다.
    • Compute Using(다음을 사용하여 계산)에서 Specific Dimensions(특정 차원)를 선택합니다. 
    • Client(클라이언트)를 Week of Date(날짜 주) 위로 이동합니다.
    • Client(클라이언트)Week of Date(날짜 주) 옆의 상자를 선택합니다. 
    • Restarting Every(다음마다 다시 시작)에서 Client(클라이언트)를 선택한 후 Table Calculation(테이블 계산) 대화 상자를 닫습니다. 
  5. isActiveDetail(세부 정보)에 끌어 놓습니다.
  6. Detail(세부 정보)에서 isActive를 마우스 오른쪽 단추로 클릭한 후 Compute Using(다음을 사용하여 계산) > Date(날짜)를 선택합니다. 
  7. Number of Active Contracts(유효 계약 수)Rows(행)에 끌어 놓습니다. 
  8. Rows(행)에서 Number of Active Contracts(유효 계약 수)를 마우스 오른쪽 단추로 클릭하고 Edit Table Calculation(테이블 계산 편집)을 선택합니다. 
    Client(클라이언트) 옆의 상자를 선택하고 Week of Date(날짜 주) 옆의 상자를 선택 취소(선택된 경우)한 후 Table Calculation(테이블 계산) 대화 상자를 닫습니다. 

*선택 사항: 종료 날짜가 없는 레코드를 포함하려면 IFNULL()을 사용하여 [Closed Date](종료 날짜) 필드의 NULL 값을 임의의 미래 날짜로 변환합니다.
IFNULL([Closed Date],#1/1/2999#)

아래 동영상에 나오는 절차를 보려면 위 섹션을 확장하세요.
참고: 동영상은 무음입니다.
  
추가 자원
위 지침에서는 Sample Data.xlsx 첨부 파일의 "Contracts(계약)" 및 "Date List(날짜 목록)"를 사용합니다.

Knowledge 기사 번호

001458045

첨부 파일

sample date scaffolding flow.tfl

4 KB

Sample Data.xlsx

18 KB

Displaying Active Records_v2020.twbx

72 KB

 
로드 중
Salesforce Help | Article