グループ式の例 (レポート ビルダーおよび SSRS)
データ領域では、1 つのフィールドでデータをグループ化することも、グループ化の基準となるデータを識別する、より複雑な式を作成することもできます。 複合式には、複数のフィールドやパラメーター、条件ステートメント、またはカスタム コードなどへの参照が含まれます。 データ領域に対してグループを定義する場合、これらの式を [グループ] プロパティに追加します。 詳細については、「データ領域でのグループの追加または削除 (レポート ビルダーおよび SSRS)」を参照してください。
簡単なフィールド式に基づく 2 つ以上のグループをマージするには、各フィールドをグループ定義のグループ式一覧に追加します。
Note
SQL Server データ ツールのレポート ビルダーまたはレポート デザイナーを使用して、レポート定義 (.rdl) を作成および変更できます。 これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。 詳細については、「レポート デザイナーおよびReport Builderでのレポートのデザイン (SSRS)」 (microsoft.com) を参照してください。
グループ式の例
次の表に、グループの定義に使用できるグループ式の例を挙げます。
説明 | 式 |
---|---|
Region フィールドでグループ化します。 |
=Fields!Region.Value |
姓と名でグループ化します。 | =Fields!LastName.Value =Fields!FirstName.Value |
姓の最初の文字でグループ化します。 | =Fields!LastName.Value.Substring(0,1) |
ユーザー選択に基づいてパラメーターでグループ化します。 この例では GroupBy パラメーターは、グループ化に使用する有効な選択肢を提供する使用可能な値の一覧に基づいている必要があります。 |
=Fields(Parameters!GroupBy.Value).Value |
3 つの異なるの年齢範囲でグループ化します。 "21 未満"、"21 ~ 50"、および "51 以上"。 |
=IIF(First(Fields!Age.Value)<21,"Under 21",(IIF(First(Fields!Age.Value)>=21 AND First(Fields!Age.Value)<=50,"Between 21 and 50","Over 50"))) |
多数の年齢範囲でグループ化します。 次の例は、Visual Basic .NET で記述され、次の範囲に対して文字列を返すカスタム コードを示します。 25 以下 26 ~ 50 51 ~ 75 76 以上 |
=Code.GetRangeValueByAge(Fields!Age.Value) カスタム コード : Function GetRangeValueByAge(ByVal age As Integer) As String Select Case age Case 0 To 25 GetRangeValueByByAge = "25 or Under" Case 26 To 50 GetRangeValueByByAge = "26 to 50" Case 51 to 75 GetRangeValueByByAge = "51 to 75" Case Else GetRangeValueByByAge = "Over 75" End Select Return GetRangeValueByByAge End Function |
参照
データのフィルター、グループ化、および並べ替え (レポート ビルダーおよび SSRS)
式の例 (レポート ビルダーおよび SSRS)
レポート デザイナーでカスタム コードやアセンブリを式から参照する (SSRS)