table 1
定单号 日期 物料号 成本
01 050606 101 0.5
02 060606 101 .07
03 020606 102 .01
05 050606 102 0.2我想取出物料号中最近日期的成本(还有物料号的其他信息)
101 0.07
102 0.2想了半天 都没解决
定单号 日期 物料号 成本
01 050606 101 0.5
02 060606 101 .07
03 020606 102 .01
05 050606 102 0.2我想取出物料号中最近日期的成本(还有物料号的其他信息)
101 0.07
102 0.2想了半天 都没解决
INNER JOIN
(SELECT 物料号,MAX(成本) m FROM table1) b
ON a.物料号=b.物料号 AND a.成本=b.m
from table1 a join
(select 物料号,max(日期) as 日期 from table1 group by 物料号)as b
on a.物料号=b.物料号 and a.日期=b.日期
Where 日期=(Select Max(日期) From table1 Where 物料号=A.物料号)
(
定单号 char(2),
日期 datetime,
物料号 varchar(10),
成本 numeric(10,2)
)
insert into #table1
select '01','050606','101',0.5 union all
select '02','060606','101',0.07 union all
select '03','020606','102',0.01 union all
select '05','050606','102',0.2select * from #table1
select a.* from #table1 a
inner join (select 物料号,max(日期) 日期 from #table1 group by 物料号)b
on a.物料号=b.物料号 and a.日期=b.日期
table A
物料号 ItemKey
101 1
102 2table B
定单号 日期 POKey
2222 050505 301table C
POLineKey POKey ItemKey
501 301 101
502 301 101
table d
价格 POLineKey
0.7 501
0.2 502
我想找出每个物料对应的定单的最新的价格
= CSDN助手 全面支持CSDN论坛 =
= 监视、收藏、历史、签名走马灯 =
==================================