34,588
社区成员
发帖
与我相关
我的任务
分享
SELECT * FROM
(
SELECT number = ROW_NUMBER() OVER(PARTITION BY b.客户编码 ORDER BY a.日期 DESC),
a.单号, a.客户编码, a.日期, b.批号, b.物料编码 FROM
主表 a INNER JOIN 从表 b ON a.单号 = b.单号
) c
WHERE c.number = 1
SELECT * FROM
(
SELECT number = ROW_NUMBER() OVER(PARTITION BY b.物料编码 ORDER BY a.日期 DESC),
a.单号, a.客户编码, a.日期, b.批号, b.物料编码 FROM
主表 a INNER JOIN 从表 b ON a.单号 = b.单号
) c
WHERE c.number = 1
Select
a.[客户编码],a.[日期],a.单号,b.批号,b.物料编码
From
[主表] a
inner Join [从表] b on b.[单号]=a.[单号]
Inner Join
(
Select t1.[客户编码], max(t1.[日期]) as [日期]
From [主表] t1
inner Join [从表] t2 on t2.[单号]=t1.[单号]
Where
t2.[物料编码]='要查的物料编码'
group by t1.[客户编码]
) c on c.[日期]=a.[日期] and c.[客户编码]=a.[客户编码]
Where
b.[物料编码]='要查的物料编码'
SELECT 客户编码,MAX(日期) AS 最后一次的时间 FROM (
SELECT * FROM 主表 a LEFT JOIN 从表 b
ON a.单号=b.单号
) GROUP BY 客户编码