在SQL中添加重复记录的值并将其显示在报告中

问题描述 投票:-1回答:1

我正在使用Microsoft Report Builder生成报告。我也有一个SQL Server数据库。

我有下表。请运行代码段以直观地显示我的SQL表。

<table style="border:1px solid black;">
  <tr>
    <th>
      Name
    </th>
    <th>
      Timesheet
    </th>
  </tr>
  <tr>
    <td align="center">
      Jacob
    </td>
    <td align="center">
      2
    </td>
  </tr>
  <tr>
    <td align="center">
      Jacob
    </td>
    <td align="center">
      3
    </td>
  </tr>
  <tr>
    <td align="center">
      John
    </td>
    <td align="center">
      1
    </td>
  </tr>
</table>

我想要在时间表列中添加重复记录的所有值,并在时间表列中显示结果,并在名称列中显示名称。不应显示重复的记录。

请运行以下代码段以直观地表示基于上一张表我想要的表的外观

<table style="border:1px solid black;">
  <tr>
    <th>
      Name
    </th>
    <th>
      Timesheet
    </th>
  </tr>
  <tr>
    <td align="center">
      Jacob
    </td>
    <td align="center">
      5
    </td>
  </tr>
  <tr>
    <td align="center">
      John
    </td>
    <td align="center">
      1
    </td>
  </tr>
 </table>

我基本上是希望将重复记录的时间表列添加在一起。也许我可以在报表生成器中做到这一点,这将比SQL Server更容易?

sql sql-server ssrs-2008
1个回答
0
投票

基于上述问题,也许您想要这样,请检查此示例。

SQL查询

DECLARE @EMP TABLE
(
    Name VARCHAR(50),
    Timesheet INT
);
INSERT INTO @EMP VALUES('Jacob',2),('Jacob',3),('John',1)

SELECT * FROM @EMP

SELECT Name,SUM(Timesheet) AS Timesheet
FROM @EMP
GROUP BY Name

输出

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.