Tableau LOD для определения первой даты для каждого значения поля

#if-statement #tableau-api #level-of-detail

#оператор if #tableau-api #уровень детализации

Вопрос:

У меня есть таблица для challenge_submissions

 date                       submitter          challenge
8/10/2020 9:02:16 AM         tim              Challenge1
8/10/2020 11:22:04 AM        morty            Challenge2
8/10/2020 11:45:10 AM        morty            Challenge1
8/10/2020 10:18:56 AM        tim              Challenge2
8/10/2020 9:34:14 AM         jim              Challenge3
8/10/2020 12:02:10 PM        pam              Challenge3
  

И еще одна таблица, которая сопоставляет игроков с их командами —

 team            player
Team A           tim
Team A           pam
Team B           jim
Team B           morty 
  

Я хочу таблицу, которая показывает мне, какая команда решила, сколько проблем сначала, т. Е. Что-то вроде этого —

 Team            Score    First Solves
Team A           xxx          2
Team B           xxx          1
  

Я попытался создать LOD для этого —

Сначала решите, {FIXED [challenge]: MIN([date])} а затем сначала решите другое вычисляемое поле — IF [date] = [First Solve] THEN [First Solve] ELSE NULL END

а затем поместить команду и отправителя в иерархию, но у меня это не работает.

Ответ №1:

Вы достигли почти.

Создайте промежуточное поле calc для упрощения понимания

Whether first solved как

 If [First Solve date]=[Date] then 1 else 0 END
  

Просто чтобы упомянуть, что я назвал первое вычисляемое поле как first solve date

Создайте желаемое поле First solves как

 {
FIXED [Team] : SUM([whether first solved])
}
  

Вы получите свое представление

Результат

Скажите мне, работает ли это. Будут оценены положительные отзывы 🙂

Комментарии:

1. Привет @AnilGoyal, извините, но это не совсем сработало для меня. Для моего текущего набора данных он всегда показывает мне 1 весь столбец.

2. Предполагая, что вы подключили обе таблицы, пожалуйста, пришлите мне скриншот ваших имен полей / структуры данных. Это должно работать