2016-11-04 2 views
0

매번 2 주 기간의 데이터를 비교해야합니다. 예를 들어 - 주 10월 10일에서 17일까지 주 10월 17일에서 24일까지Tableau 대시 보드의 지난 주 전체를 비교할 날짜 필터

에 내가 대시 보드를 생성 할

때 액세스 내가 때마다 마지막 전체 2 주의 기간을 선택합니다 대시 보드 (월요일 ~ 월요일).

DATEPART를 사용하여 현재 날짜에 따라 날짜를 더하거나 줄이는 계산 된 필드를 만들려고했습니다. 어쩌면 더 좋은 방법이 있을까요? 이것은 나에게도 효과가 없었기 때문에.

답변

0

가이 할 수있는 더 나은 방법이 아마도,하지만 작동 신속한 답변을 위해서 ...

if (datepart('week',[Order Date])= (datepart('week',today())) -2) or (datepart('week',[Order Date])= (datepart('week',today())) -1) then 'Include' else 'Exclude' end

두 가지가 있습니다이 논리와 계산 필드 만들기 이 수식에서 일어나는 일 : 먼저, 날짜 필드 ([주문 날짜])에서 주 번호 (1에서 52까지)를 검색하고 있습니다. 다음으로 현재 주에 대한 주 번호를 검색하고 결과에서 2를 뺍니다. 레코드 ([Order Date])가 현재 주에서 2를 뺀 것이거나 현재 주에서 1을 뺀 다음 "Include"이면 그렇지 않으면 제외됩니다.

그런 다음이 포함 필터 창에이 필드를 추가하고에만 설정할 수 있습니다 당신은거야,

+0

동일한 문제를 10 주 동안 적용하고 싶다면 위와 같은 간단한 질문을합니다. 22AUR-29AUG 만 사용합니다. – user3581800

+0

실제로 -10과 -1로 작동합니다. – user3581800

1

하나의 문제는 당신이 여러 데이터 년이있는 경우, 위의 접근 방식을 고려할 수 있습니다 '포함' 또한 현재 연도를 지키기 위해 1 년 필터가 필요합니다. 그렇지 않으면 이전 연도를보기에 추가합니다. 또는 다음과 같이 필터 계산을 수정할 수 있습니다.

IF (DATEPART('year', [Date]) = DATEPART('year', today()) 
     AND DATEPART('week', [Date]) = (DATEPART('week', today()) -2) 

    OR DATEPART('year', [Date]) = DATEPART('year', today()) 
     AND DATEPART('week', [Date]) = (DATEPART('week', today()) - 1)) 

     THEN 'Include' 
     ELSE 'Exclude' 
     END