0
我正在使用SQL Server 2014,并且查询出现问题。在SQL Server 2014中查询报表(我需要表中的最后一行)
我想在我的报告,已交付使用ID_Order = 9
订单的所有项目。对于已经交付两次的商品(例如商品代码= Art3),我只想要最后一行,这意味着此商品的最后一次交付,没有重复。
我已经尝试过这两个查询没有成功:
尝试#1:DISTINCT
SELECT DISTINCT
Order.ItemCode, Delivery. Qty, Delivery.ID_Delivery,
Order.ID_Order
FROM
Delivery
INNER JOIN
Order ON Order.ID_Order = Delivery.ID_Order
WHERE
Order.ID_Order = '9'
尝试#2:子查询
SELECT *
FROM
(SELECT
Order.ItemCode, Delivery.Qty,
FROM
Delivery
INNER JOIN
Order ON Order.ID_Order = Delivery.ID_Order
WHERE
Order.ID_Order = '9')
GROUP BY
a.ItemCode, a.Qty
我无法理解为什么你要为'id_delivery = 23'放弃'ar2'。这是什么条件。你的要求是什么? –
选择最后一次交货的标准是什么?在什么基础上可以告诉最后一次交货? –
或者如果你只是想要的结果,然后只是在'id_order,itemcode'和'select max(id_Delivery),max(qty),其他列'上进行分组。 –