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

一个常见得查询有关问题

2012-01-22 
一个常见得查询问题有一表A的字段有ID(identity(1,1)),cellid,price,owedate数据为1,101,30002001-10-012,

一个常见得查询问题
有一表A的字段有ID(identity(1,1)),cellid,price,owedate
                  数据为   1,                                   101,     3000         2001-10-01
                                2,                                   101,     2500         2001-10-11
                                3,                                   102,     2800         2001-11-01
                                .........
现在想根据cellid   进行分组查询,得出owedate日期最新的一条记录的SQL语句该怎么写?
比如得出结果为
                              id                                   cellid             price             owedate
                                2                                         101                   2500                 2001-10-   11
                                3                                         102                   2800                 2001-11-01
                              ........
  不知说清楚了没有!     thinks



[解决办法]
最容易理解的一种
select * from A where owedate in (select max(owedate) owedate from A group by cellid)
[解决办法]
select a.* from A a,
(select ID=max(ID),owedate=max(owedate) from A group by cellid) b
where a.ID=b.ID

热点排行