17

2 つのテーブルを含むレポートがあります。最初の表はクライアントのリストで、3 つのカテゴリの 1 つのカテゴリに分類される各クライアントの詳細を、クライアントごとに異なる項目で示しています。SQL は client_table を client_items テーブルに結合します (クライアントごとに複数のアイテムが存在する可能性があります)。SQL の結果は次のようになります。

Type    ClientID    ItemID
A       1           1
A       3           1
A       3           2
B       2           1
B       4           3
C       5           2

2 番目のテーブルは、さまざまなタイプの組み合わせから個別の ClientID の数を返します。

  • 合計 (A+B+C) - 私はこれを理解しました=CountDistinct(Fields!ClientID.Value,"datasource1")

  • タイプ B+C - タイプが B または C である個別の ClientID

  • タイプ C - タイプが C である個別の ClientID

それが明確だったことを願っています。そうでない場合は、それを明確にするために何を追加する必要があるかを教えてください。

4

2 に答える 2

29

CountDistinct()null 以外の値をカウントするため、式を使用して、カウントしたくない値を null にして、最初の値と同様のことを行うことができます。

タイプ B+C:

=CountDistinct
(
  IIf
  (
    Fields!Type.Value = "B" or Fields!Type.Value = "C"
    , Fields!ClientId.Value
    , Nothing
  )
  , "datasource1"
)

タイプ C:

=CountDistinct
(
  IIf
  (
    Fields!Type.Value = "C"
    , Fields!ClientId.Value
    , Nothing
  )
  , "datasource1"
)
于 2013-01-09T19:21:21.997 に答える
2
=Sum(CountDistinct(Fields!UserName.Value,"IssueDate7"))

ここで Username は行グループで、Issuedate7 は列グループです

よろしく

マーシーS

于 2013-04-24T06:19:57.567 に答える