Вернуть первое значение Not NULL в разделе в табличном представлении

В приведенном ниже наборе данных мне нужно вернуть первое ненулевое значение для каждого раздела. Может кто-нибудь, пожалуйста, помогите.

Набор данных:

Item    FirstSold   Name
1       NULL        Jack
1       13          Rob
1       2           Simon
2       NULL        Mat
2       6           Erik
2       12          Rob
3       NULL        Jack
3       9           Gon
3       9           ob
4       NULL        Erik
4       NULL        Rob
4       12          Jack

Вывод:

Item    Name
1       Rob
2       Erik
3       Gon
4       Jack

Есть ли способ установить это с помощью LOD?

Заранее спасибо.


person Raghveer Arora    schedule 10.12.2017    source источник
comment
Используется приведенное ниже выражение LOD на основе MAX и MIN, если [Key] = [D1. Мин. Ключ] и [D3. Max Key NULL] = False и [D2. Min Key NULL] = False, затем Y elseif [D3. Max Key NULL] = True и [Actv Flag] = Y и [D2. Min Key NULL] = True, затем Y, иначе N END; но невозможно определить, когда значения MAX и Min различаются.   -  person Raghveer Arora    schedule 11.12.2017
comment
Если ваш расчет зависит от порядка строк в результате запроса, тогда вам нужно либо использовать вычисление таблиц, либо какой-то собственный SQL. Сначала попробуйте вычисление таблицы.   -  person Alex Blakemore    schedule 11.12.2017


Ответы (1)


Попробуй это:

  1. Поместите First Sold in, чтобы отфильтровать и исключить Null, который удалит null и вернет только не null.

  2. Создайте поле расчета и используйте функцию First(), а затем перейдите к Edit Table Calculation, выберите все 3 поля, используемые в таблице, а затем сбросьте таблицу для каждого Item.

  3. Поместите расчет таблицы в фильтр, а затем выберите только 0, теперь у вас есть первое ненулевое значение в отчете

person Siva    schedule 11.12.2017
comment
Вы, вероятно, захотите также решить, как отсортировать поля «вычисление с использованием» в вашей таблице calc, вместо того, чтобы оставлять их неопределенными, т.е. сначала определить ... - person Alex Blakemore; 12.12.2017
comment
@AlexBlakemore хороший улов ... да, мы даже можем сделать такую ​​сортировку в порядке источников данных - person Siva; 12.12.2017
comment
Даже если вы используете порядок источников данных, он может произвольно измениться, если вы его не укажете. Если вы используете собственный SQL или представление, вы, конечно, можете иметь предложение ORDER BY, но я рекомендую избегать их в источнике данных и вместо этого указывать порядок в Таблице. Таким образом, диаграммы, которые не зависят от порядка, не должны оплачивать стоимость сортировки, а диаграммы, которые хотят отображать данные в другом порядке, не должны сначала платить стоимость сортировки в одну сторону, а затем сортировка другим способом. Позвольте источнику данных делать большую часть работы, но обычно оставляйте сортировку клиенту. - person Alex Blakemore; 13.12.2017