top新手问题!!!

hdvcd 2003-12-12 10:40:46
一张零件采购价格表:
零件名称,采购价格,采购日期...
part1 2 2003-10-5
part1 3 2003-10-7
part2 4 2003-10-5
part2 5 2003-10-7
...
无主键,零件名称有重复,就是说不同的采购日期有不同的采购价格,现在要选出每个零件最新日期的采购价格,请问sql语句该怎么写?知道要用top 1,但加了group by采购日期后它说零件名称无效什么,不懂。请教各位!急!在线等!
...全文
20 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hdvcd 2003-12-12
问题解决,多谢各位!
  • 打赏
  • 举报
回复
victorycyz 2003-12-12

select a.零件名称,a.采购价格
from tablename a join
( select 零件名称, max(采购日期) as 日期
from tablename
group by 零件名称
) b on a.零件名称=b.零件名称 and a.采购日期=b.日期
  • 打赏
  • 举报
回复
wzh1215 2003-12-12
select 零件名称,采购价格 from 表 where 采购日期 in(select max(采购日期) from 表 group by 零件名称)
  • 打赏
  • 举报
回复
txlicenhe 2003-12-12
select * from 表 a
where 采购日期 = ( select top 1 采购日期 from 表 where 零件名称 = a.零件名称 order by 采购日期 desc )
  • 打赏
  • 举报
回复
wzh1215 2003-12-12
select 零件名称,max(采购日期) from 表 group by 零件名称
  • 打赏
  • 举报
回复
相关推荐
发帖
MS-SQL Server

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
帖子事件
创建了帖子
2003-12-12 10:40
社区公告
暂无公告