Powiedzmy, że mam dane podobne do:

|NAME  |AMOUNT|RANDOM_FLAG|
|------|------|-----------|
|MARK  |   100|       X   |
|MARK  |   400|           | 
|MARK  |   200|       X   | 
|AMY   |   100|       X   |
|AMY   |   400|           | 
|AMY   |   300|           |
|ABE   |   300|           |
|ABE   |   900|           |
|ABE   |   700|           |

Jak mogę uzyskać wyraźną liczbę nazw z co najmniej jednym zestawem random_flag. W moim łącznym rzędzie chcę zobaczyć 2, ponieważ zarówno Mark, jak i Amy miał zestaw flagi, niezależnie od tego, ile razy jest wybrany. Próbowałem każdej rzeczy, o której mogę myśleć w SSRS. Zgaduję, że istnieje sposób na zagładę agregatów, aby dotrzeć do tego, ale nie mogę się z tym wymyślić. Mam grupę na imieniu.

1
loganx80 15 luty 2017, 19:27

2 odpowiedzi

Najlepsza odpowiedź

Możesz użyć warunkowego COUNTDISTINCT w SSRS.

=COUNTDISTINCT(
  IIF( not ISNOTHING(Fields!Random_Flag.Value) and Fields!Random_Flag <> "",Fields!Name.Value,Nothing),
  "DataSetName"
)

Wymień DataSetName według nazwy zestawu danych.

0
halfer 15 marzec 2020, 00:45
 select count(name) from table_name where name in (select distinct name from table_name where random_flag="x");
0
Punith R Kashi 15 luty 2017, 16:36