본문 바로가기

Tableau

Tableau Master Calendar

태블로는 마스터 캘린더를 DB 테이블로 생성 해서 사용하는거 같습니다. Qlik은 자체 스크립트를 이용해서 생성해서 사용하는것하고 다른것 같습니다.

 

Tableau Master Calendar은 데이터에 있는 모든 날짜를 포함하는 하나의 테이블로 구성된 달력 테이블입니다. 이 테이블은 일반적으로 모든 날짜가 포함되어 있는 달력 테이블과 다른 테이블과의 조인을 통해 생성됩니다. 이를 통해 사용자는 날짜에 대한 다양한 계산과 분석을 수행할 수 있습니다.

Tableau Master Calendar의 장점은 다음과 같습니다:

  • 날짜를 기준으로 다른 데이터를 그룹화하고 분석하는 데 용이합니다.
  • 데이터의 빈 날짜를 채우거나 누락된 날짜를 삽입하여 완전한 데이터 세트를 생성할 수 있습니다.
  • 계절, 요일, 주말 등의 기간적인 패턴을 분석할 수 있습니다.
  • 다른 테이블에서 날짜 필드를 참조할 때 편리합니다.

Tableau Master Calendar을 생성하는 방법은 다양하지만, 일반적으로 다음과 같은 단계를 따릅니다:

  1. 일반적으로 분석할 데이터를 기반으로 날짜 필드를 식별합니다.
  2. 날짜 범위 내에 있는 모든 날짜를 포함하는 달력 테이블을 만듭니다.
  3. 달력 테이블과 기존 데이터 테이블 간의 조인을 수행합니다.
  4. 날짜 관련 계산과 분석을 수행합니다.

Tableau Master Calendar은 날짜를 다루는 대부분의 분석 작업에 필수적인 요소입니다. 이를 활용하여 사용자는 날짜 관련 정보를 더 쉽게 분석하고 이해할 수 있습니다.

 

Tableau Master Calendar을 생성하는 스크립트는 데이터 소스 및 날짜 범위에 따라 달라질 수 있습니다. 하지만 일반적으로 다음과 같은 SQL 스크립트를 사용하여 Master Calendar을 생성할 수 있습니다.

 

-- Create a temporary table to store dates
CREATE TEMPORARY TABLE temp_dates (
  date date
);

-- Populate the temporary table with all dates within the desired range
INSERT INTO temp_dates
SELECT generate_series('2021-01-01'::date, '2021-12-31'::date, '1 day'::interval) AS date;

-- Create the Master Calendar table by joining the temporary table with other data tables
CREATE TABLE master_calendar AS (
  SELECT
    date,
    extract(year from date) AS year,
    extract(quarter from date) AS quarter,
    extract(month from date) AS month,
    extract(week from date) AS week,
    extract(dow from date) AS weekday,
    to_char(date, 'Month') AS month_name,
    to_char(date, 'Mon') AS month_abbr,
    to_char(date, 'Day') AS day_name,
    to_char(date, 'Dy') AS day_abbr,
    to_char(date, 'YYYY-MM-DD') AS yyyymmdd
  FROM
    temp_dates
  LEFT JOIN
    other_data_table
  ON
    temp_dates.date = other_data_table.date
);

-- Drop the temporary table
DROP TABLE temp_dates;

 

 

 

위 스크립트에서는 먼저 temp_dates라는 임시 테이블을 만들고, 해당 날짜 범위 내의 모든 날짜를 generate_series 함수를 사용하여 채웁니다. 그런 다음 master_calendar라는 Master Calendar 테이블을 생성하고, 필요한 모든 날짜 계산을 수행하고, 다른 데이터 테이블과 조인하여 모든 날짜를 포함하는 테이블을 만듭니다.

물론 데이터베이스 마다 문법적 차이가 있을 수 있으며, 사용자가 사용하는 데이터 소스에 따라 이 스크립트를 수정해야 할 수도 있습니다.

'Tableau' 카테고리의 다른 글

Tableau 서버 궁금한 내용 검색 결과  (0) 2023.04.18
Tableau에서 null 값이 있는 숫자 합계  (0) 2023.04.18
태블로를 공부 하면서 느낀점  (0) 2023.04.12
Tableau Desktop 기초  (0) 2023.04.12
LOD란 무엇인가?  (0) 2023.04.10