例如,我有一个返回一些东西的查询
route value
1 3
2 2
3 4
4 5
5 1
然后我需要在 2 个文本框中输入最大和最小路由,所以在 sql 中这将是
select top 1 route from table where value=(select max(value) from table)
我添加了一个在 excel 中完成的图像,这将如何。
我相信这很容易,但我不知道如何获得它。
例如,我有一个返回一些东西的查询
route value
1 3
2 2
3 4
4 5
5 1
然后我需要在 2 个文本框中输入最大和最小路由,所以在 sql 中这将是
select top 1 route from table where value=(select max(value) from table)
我添加了一个在 excel 中完成的图像,这将如何。
我相信这很容易,但我不知道如何获得它。
我得到了使用表达式,这正是表达式
="Route "+
Convert.ToString (
Lookup(max(fields!value.Value),fields!value.Value ,fields!route.Value,"mydataset")
)
将最大值更改为最小值,其他...
感谢大家。
我相信您要查找的查询是:
With Min_Max_CTE as (
Select MIN(value) as Min_Value
, MAX(value) as Max_Value
From Table
)
Select Top 1 'Min' as Type
, T.route
, T.value
From Table T
Inner Join Min_Max_CTE CTE
on T.value = CTE.Min_Value
Union All
Select Top 1 'Max' as Type
, T.route
, T.value
From Table T
Inner Join Min_Max_CTE CTE
on T.value = CTE.Max_Value
Order by Type desc --This will put the Min Route first followed by the Max Route
然后,将该查询放入数据集中,然后创建一个 tablix 并使用 Type、route 和 value 字段返回最小路径和最大路径。它最终应该像您的 excel 部分一样设置,上面有最小和最大路线。
您可以通过使用几个单独的表来执行此 SSRS。您的示例数据:
以及 Designer 中的两个表:
由于表格只有标题行,因此只会显示表格中的第一行。
为了确保我们得到两个表中的MAX
和MIN
值,每个表都需要对其数据集进行适当的排序,即按值分别按降序和升序排列。
MAX
桌子:
MIN
桌子:
这给出了您的预期结果: