概括; 通过某些列连接某些表具有相似的结果。我们如何对它们进行分组并选择 max(column)。
我的查询是;
SELECT DISTINCT TOP (1000) LG_070_ITEMS.CODE AS PRODCODE,
LG_070_01_SERILOTN.CODE AS CODE,
LG_070_01_SLTRANS.OUTCOST,
LG_070_01_SLTRANS.LOGICALREF AS LREF,
LG_070_01_SLTRANS.INSLTRANSREF,
LG_070_01_SLTRANS.INVENNO,
LG_070_01_SLTRANS.INTRANSREF,
LG_070_01_SLTRANS.STTRANSREF
FROM LG_070_01_SERILOTN
INNER JOIN LG_070_01_SLTRANS ON LG_070_01_SLTRANS.SLREF = LG_070_01_SERILOTN.LOGICALREF
INNER JOIN LG_070_ITEMS ON LG_070_ITEMS.LOGICALREF = LG_070_01_SERILOTN.ITEMREF
WHERE [TIGERDB].[dbo].[LG_070_01_SERILOTN].CODE = '868328002749220'
并且来自数据库的答案是;
Prodcode code---------------COST--LREF ------一三四
K-3773 868328002749220 50,85 46255------- 0 10 0 33584
K-3773 868328002749220 50,85 46504------- 46255 10 33584 33639
K-3773 868328002749220 50,85 46524------- 46504 11 33639 33640
K-3773 868328002749220 50,85 51273------- 46524 11 33640 38581
K-3773 868328002749220 50,85 51285------- 51273 9 38581 38587
K-3773 868328002749220 50,85 52275------- 51273 11 38581 39823
K-3773 868328002749220 50,85 52276------- 52275 9 39823 39824
现在我的问题是,我如何选择最后一行。它可以大于 LREF Column 或 column-one。
我的查询是一样的。我在状态和结果与此相同的情况下使用数字。
我尝试使用 max(columname) 和 group by othercolumns 等。我使用了带有 microsoft sql server 管理工具的查询设计器。
在这三个表中,未选择的列对我来说并不重要。使用 mysql 我可以使用 select ...max(lref) from ... joins ... group by code 执行此操作,但我必须使用 mssql 执行此操作。