Sql server SQL唯一行
输出前的数据 SQL新手。在数据中,我需要一个SQL查询,它将以一种方式返回行,如果Sql server SQL唯一行,sql-server,Sql Server,输出前的数据 SQL新手。在数据中,我需要一个SQL查询,它将以一种方式返回行,如果Init不为null,则按月份返回Att Date的最大值,否则它应该只返回日期。因此,上面示例的输出需要如下所示 输出 使用分组依据 select ID, FORMAT(AsgnDate, 'dd/MM/yyyy', 'en-us') AsgnDate ,FORMAT(AttDate, 'dd/MM/yyyy', 'en-us') AttDate , case when max(INIT) is null
Init不为null
,则按月份返回Att Date
的最大值,否则它应该只返回日期。因此,上面示例的输出需要如下所示
输出
使用
分组依据
select ID, FORMAT(AsgnDate, 'dd/MM/yyyy', 'en-us') AsgnDate
,FORMAT(AttDate, 'dd/MM/yyyy', 'en-us') AttDate ,
case when max(INIT) is null then '' else max(INIT) end as INIT from t
group by ID, AsgnDate,AttDate
ID AsgnDate AttDate INIT
1 01/05/2018 22/05/2018 ABC
1 01/05/2018 28/06/2018
1 01/05/2018 10/07/2018
2 01/05/2018 09/05/2018 DEF
2 01/05/2018 25/07/2018