当前位置: 首页 > 知识库问答 >
问题:

如何对SQL/SSRS报表中的某一行进行合并和居中?

王扬
2023-03-14

我有一个表格如下:

我想合并和居中的S/No1.0和2.0只,并显示到SSRS报告,其余的行保持不变,有没有办法做到这一点?

结果将像下面的第二个图像。

共有1个答案

钮高朗
2023-03-14

方法1:不对DataSet进行真正的更改。

将带有标题的父行组添加到当前Tablix中。将分组设置为这样的表达式(假设s/no来自名为serialnumber的字段

=CINT(Fields.SerialNumber.Value)

在这里,我们只需将S/NO转换成一个整数,这样1.0和1.1都返回1

现在,每组行都有一个标题行。

可以合并标题行中的单元格,并将表达式设置为

=FIRST(Fields!Description.Value)

您可能必须强制数据集中的数据顺序,以确保1.0总是在1.1之前,等等。

方法2:将组名添加到数据集中

注意:这是为SQL Server编写的,而不是MySQL,但如果需要,应该很容易翻译

如果这不起作用,您可以将组标头添加到dataset查询的新列中,然后对其进行分组。数据集查询将如下所示...

(我复制了您的数据以显示其工作状态)

DECLARE @myTable TABLE (SerialNumber decimal (5,1), Description varchar(50), UOM varchar(50), rate decimal (10,2))
INSERT INTO @myTable VALUES
(1.0, 'Warehouse Charges', NULL, NULL),
(1.1, 'Storage in pallet', 'perpallet per month or part thereof', 15.84),
(2.0, 'Handling', NULL, NULL),
(2.1, 'Unstuffing - Palletised', 'per pallet', 5.00),
(2.2, 'De-palletised', 'per palett', 5.00)

SELECT * FROM @myTable

    SELECT 
        b.Description as GroupName, a.* 
        FROM @myTable a 
          JOIN (SELECT SerialNumber, Description FROM @myTable WHERE CAST(SerialNumber AS INT) = SerialNumber) b -- headers only
            ON CAST(a.SerialNumber AS INT) = b.SerialNumber 
        WHERE a.SerialNumber != b.SerialNumber

这将产生以下输出

所以现在您可以只对groupname字段进行分组,然后按照前面方法中所述进行合并。

 类似资料:
  • 问题内容: 我有一张桌子 但是我希望输出如下(我想使用此输出与其他一些表进行内部联接) 我已经调查过,但不确定如何使用它。 问题答案: 这种转换称为 枢轴 。您没有指定要使用的数据库,但是可以在任何系统中使用带有表达式的聚合函数: 参见带有演示的SQL Fiddle 根据您的数据库,如果您可以同时访问和函数,则可以使用它们来获取结果。该函数将和列转换为行。完成后,您可以使用函数创建四个新列: 请参

  • 问题内容: 我觉得在SSRS报告中这样做应该相对容易。使用VS2010。我有一个来自基本sql查询的表。只需将列放到Visual Studio中的表格中即可。我想首先按公司对表进行分组,这是通过行组属性完成的。我有一张看起来像这样的桌子。 现在,我想将Contact Subs及其子证书合并为一行。但仅使用最近的年份。因为某些ContactSub可能已将其SubCert从B升级到A。 我向该行添加了

  • 本文向大家介绍bootstrap table合并行数据并居中对齐效果,包括了bootstrap table合并行数据并居中对齐效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了bootstrap table合并行数据并居中对齐的具体代码,供大家参考,具体内容如下 渲染表格后进行数据行合并 整体代码 合并后对td设置属性 vertical-align: middle; 展现图片 以上

  • 问题内容: 我根据员工的工作时间做一些报告。在某些情况下,数据包含两个单独的记录,这实际上是一个时间段。 这是该表的基本版本和一些示例记录: 数据: 在该示例中,最后两个记录在时间上是连续的。我想编写一个查询,该查询结合了所有相邻记录,因此结果集是这样的: 理想情况下,它还应该能够处理两个以上的相邻记录,但这不是必需的。 问题答案: 本文为您的问题提供了许多可能的解决方案 http://www.s

  • 分支合并分为两种情况,一种是本地分支合并,一种是远程分支合并到本地分支,下面,分别用GIF动画演示 本地合并分支: 远程分支合并

  • 有人知道为什么repository方法没有按照预期工作吗?多谢了。