首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL server 05的语句

2013-07-04 
求一个SQL server 05的语句select b.* from DutyInfo b,(selectMAX(a.DutyDate) DutyDate,sign as sign fr

求一个SQL server 05的语句


select b.* from DutyInfo b
,
(select  MAX(a.DutyDate) DutyDate,sign as sign 
from DutyInfo a group by a.sign) a 
where b.DutyDate=a.DutyDate 
order by b.DutyDate

现在这个不能添加查询条件  我的需求是比如有一下数据
表 DutyInfo
DutyDate   DutyName  sign
20130515     A         1
20130516     B         1
20130517     C         2
20130518     A         1
20130519     B         2
20130520     C         2
20130521     A         1
我要找出sign分别为1和2且DutyDate最大的一组数据   要能添加DutyDate条件比如DutyDate小于 大于 或者在两个数之间   我上面那个就是不能添加条件 一添加条件就不显示数据了。(因为上面的语句默认是在已有数据中找出最大的1和2,所以一添加条件就屏蔽了最大两个Dutydate,才不显示数据了)
谢谢各位大侠了!!!!! SQL?Server 行业数据 SQL select
[解决办法]

select MaxDate Dutydate,DutyName,sign
from (select DutyDate, DutyName,sign,MAX(DutyDate) over (partition by sign) MaxDate
from @DutyInfo 
(条件)
) as a
where DutyDate=MaxDate
order by a.DutyDate

热点排行