在TSQL中使用不同的最大分区

时间:2017-06-07 14:54:22

标签: sql sql-server tsql

SELECT DISTINCT 
    MAX(pb.revision) OVER (PARTITION BY pb.batch) AS REVNO, 
    pb.lot, pb.batch
FROM 
    db1 ps
INNER JOIN 
    db2 pb ON ps.Title = pb.Lot
WHERE 
    pb.proposalsubmitted IS NOT NULL 
    AND PS.Contract LIKE 'CLS' 
    AND BATCH <> 6
GROUP BY 
    pb.lot, pb.batch, pb.revision
ORDER BY 
    pb.lot

上面是我的代码片段 - 我正在尝试检索每批的最大修订版号。每个批次号可以有多个批次。另一个问题是此数据库是在SharePoint中一次设置的,批处理列实际上是VARCHAR而不是Integer。我不确定这是不是问题所在,因为每次拉动我都会结束:

Results from query

实际的批号和相应的修订如下:

Real batch and Lot numbers

谢谢你们 - 这可能是我的一个根本问题,或者是对

的over()分区的误解

0 个答案:

没有答案