除了一列之外,如何分组

时间:2017-05-04 13:08:40

标签: sql tsql

我想将我的结果分组,除了一列:

Select Name,Title,Date from Books group by Name,Title

我不想按日期分组,因为图书可能有相同的日期

3 个答案:

答案 0 :(得分:0)

在不知道要包含或排除的订购类型或特定日期值的情况下快速而肮脏:

Select b.Name, b.Title, b.Date From Books b
Join (Select Name, Title From Books Group By Name, Title) sub
    On sub.Name = b.Name And sub.Title = b.Title

答案 1 :(得分:0)

你可以使用

Select Name,Title,Date from Books group by Name,Title,Date;

Select distinct Name,Title,Date from Books;

出于同样的目的。由于日期相同,它不会有任何区别。

如果日期不相同,那么您可以使用任何聚合函数来实现相同的功能。像:

Select Name,Title,max(Date)--any aggregate function based on logic 
from Books group by Name,Title,Date;

答案 2 :(得分:-3)

这些正在按预期工作

  SELECT [Name]
          ,[Title]
         ,max(Date)
  FROM [Books].[dbo].[myBooks] group by [Name],[Title]