计算SQL Server中的重复值并显示为另一列

时间:2016-04-08 11:24:30

标签: sql-server count

我需要查询才能获得以下结果。 目的是计算A或B或C中列的重复值,并放入C列。 此外,重复的行应该被截断或不显示。

  

难点在于SQL Server将日期视为日期和时间。因此,日期的明确值不能与“datetime”分开。

A列来自一个表(比如TableA),B列来自另一个表(比如TableB)。

TABLE_1: (在使用查询之前)

Column_A  | Column_B |      Column_C
12345678  |  AB      | 2013-08-30 15:06:52.000
12345678  |  AB      | 2013-08-30 15:08:19.000
12345678  |  AB      | 2013-08-30 16:08:19.000
23456789  |  BC      | 2014-06-20 10:08:19.000
23456789  |  BC      | 2014-06-20 12:08:19.000
34567891  |  CD      | 2016-03-20 10:08:19.000

TABLE_1: (使用查询后,表格如下所示)

Column_A  | Column_B |      Column_C           | Column_D
12345678  |  AB      | 2013-08-30 00:00:00.000 | 3
23456789  |  BC      | 2014-06-20 00:00:00.000 | 2
34567891  |  CD      | 2016-03-20 00:00:00.000 | 1

1 个答案:

答案 0 :(得分:0)

您所需要的只是一个分组:

SELECT Column_A, Column_B, count(*) as Column_C
FROM Table_1
GROUP BY Column_A, Column_B