SRSS - 两列中来自同一 SQL 请求的双组
Posted
技术标签:
【中文标题】SRSS - 两列中来自同一 SQL 请求的双组【英文标题】:SRSS - Double GROUPS from same SQL request in two columns 【发布时间】:2022-01-03 23:16:00 【问题描述】:作为 s-s-rS 的新手,我完全被困住了。
我有一组这样形成的数据:
权利的“选择”涉及多个“公司” 一个“公司”包含多个“导体” 一个“选择”可由多个“访问者”访问我的 SQL 结果如下所示:
SELECTION_NAME | COMPANY_NAME | CONDUCTORS_NAME | ACCESSORS_NAME |
---|---|---|---|
SELECT_A | COMPANY_A | John | Maggie |
SELECT_A | COMPANY_A | John | Lucy |
SELECT_A | COMPANY_A | John | Veronica |
SELECT_A | COMPANY_A | Bob | Maggie |
SELECT_A | COMPANY_A | Bob | Lucy |
SELECT_A | COMPANY_A | Bob | Veronica |
SELECT_A | COMPANY_AA | Luke | Maggie |
SELECT_A | COMPANY_AA | Luke | Lucy |
SELECT_A | COMPANY_AA | Luke | Veronica |
如您所见,导体重复的次数与相对 Selection 的访问者一样多。
我希望在我的 s-s-rS 报告中拥有一个相对相同的结构,但我希望导体和相关访问者列出每个 ONCE。 并且,按选择 > 公司分组。
可能是这样的:
SELECTION_NAME | COMPANY_NAME | CONDUCTORS_NAME | ACCESSORS_NAME |
---|---|---|---|
SELECT_A | COMPANY_A | ||
John | Maggie | ||
Bob | Lucy | ||
Veronica | |||
COMPANY_AA | |||
Luke | Maggie | ||
Lucy | |||
Veronica |
我尝试创建 2 个数据集并使用 LOOKUP,但如果它仅列出一次导体,在每一行,我都会重复第一个访问器,没有更多行,没有其他访问器名称..
如何在第三列中显示conductors
,无论访问者数量如何,按SELECTION > Company
分组,并且仅在第四列中显示SELECTION accessors
,无论导体,还按SELECTION > Company
分组(即使访问者将在同一Selection的每个公司行)?
s-s-rS 可以做到这一点吗? 我正在使用 Microsoft Visual Studio 2010。
谢谢
【问题讨论】:
【参考方案1】:你不需要做任何复杂的事情。
创建一个数据集,为您提供问题开始时显示的表格。
然后将 tablix(表格)添加到您的报告中。
有几种方法可以创建设计,但如果您首先将访问器拖到详细信息行上。现在,在主设计窗口下,您将看到列出了行组的部分,您将只有一个名为“详细”的部分,现在您可以将导体拖动到详细信息行组上方,也可以右键单击详细信息行组并添加父组并选择指挥。重复为其他两列添加行组。
s-s-rS 文档更详细地解释了这个过程
https://docs.microsoft.com/en-us/sql/reporting-services/lesson-6-adding-grouping-and-totals-reporting-services?view=sql-server-ver15
他的快速 GIF 使用您的数据向您展示基本步骤。请注意,我将字段名称拖动到现有行组名称的正上方,以便出现一条蓝线,然后松开鼠标按钮。
【讨论】:
谢谢!我现在有一次导体,但是在每个导体处重复访问器而不是一次。我的 Arbo 是(组):Selection > Company > Conductors > Details (accessors)
【参考方案2】:
我没有找到任何方法来只使用组..
我创建了一个带有访问器的子报表(链接到选择 > 公司 > 访问器)。 我将它添加到主报告的新列中,该列仅显示“导体”(选择 > 公司 > 导体)。
唯一的缺点是它的充电报告真的很长..:/
【讨论】:
以上是关于SRSS - 两列中来自同一 SQL 请求的双组的主要内容,如果未能解决你的问题,请参考以下文章