读书人

求SQL掏出最大月份的存量

发布时间: 2013-03-01 18:33:02 作者: rapoo

求SQL取出最大月份的存量
本帖最后由 erpcsu 于 2013-03-01 09:27:49 编辑 表INVLB,表:
LB001 char(20)(品),LB002 char(6)(存年月),LB003 numeric(16.6)(月初量)
11312021-00, ,201210, 20
11312021-00, ,201211, 30
11312021-00, ,201212, 40
...
了算前的存量,取出最大月份的存,
使用 select top 1 LB001,MAX(LB002) AS LB002,LB003
from INVLB
WHERE LB001='11312021-00'
GROUP BY LB001,LB003
可以:
11312021-00, ,201212, 40
.
:有很多料,如何取出每料的最大月份的存(不能直接指定前的最大月份LB002,而是去表判)

LB001 char(20)(品),LB002 char(6)(存年月),LB003 numeric(16.6)(月初量)
11312021-00, ,201210, 20
11312021-00, ,201211, 30
11312021-00, ,201212, 40
11312021-01, ,201210, 20
11312021-01, ,201211, 30
11312021-01, ,201212, 400
...
求果示
11312021-00, ,201212, 40
11312021-01, ,201212, 400
...
!
[解决办法]
1你的语句是错的,top 1不排序不一定取出哪条数据
2、如下语句试试
select * from INVLB a
where not exists (
select 1 from INVLB b
where b.LB001 = a.LB001
and b.LB002 > a.LB002
)

读书人网 >SQL Server

热点推荐