我遇到查询问题,我需要在C#中的datagrid中显示数据。 我有桌子篮子,在一个特定的篮子里我可以省下很多工作人员(不受限制)
所以现在我已经完成了查询,它让我在datagrid中的所有工作人员,所以我有datagarid中显示的重复篮子,我需要显示每个篮子,但最后输入的工作订单。 我想做一个查询,每个篮子只显示一个工作订单(只有最新或最后输入的工作订单)。
我们尝试使用group by和distinct,但是没有用。
我试过这些
select db_basket.basket_id, db_basket_order.basket_order_id, db_basket.basket_mark, prod_workorder.brojnaloga, db_basket_order.startdate, db_basket_order.quantity
from db_basket
left join db_basket_order
on db_basket_order.basket_id=db_basket.basket_id
left join prod_workorder
on db_basket_order.workorder_id=prod_workorder.workorderid
select db_basket.basket_mark, max(db_basket_order.startdate) as startdate
from db_basket
left join db_basket_order
on db_basket_order.basket_id=db_basket.basket_id
group by basket_mark
这里我有一张图片,在图片上你可以看到查询显示了几行同一个basket_id,正如我所说,我只需要一个篮子,它会显示我最新的工作订单。
谢谢。
答案 0 :(得分:0)
您可以尝试这样的事情
select db_basket.basket_id, db_basket_order.basket_order_id, db_basket.basket_mark, prod_workorder.brojnaloga, db_basket_order.startdate, db_basket_order.quantity
from db_basket
left join db_basket_order
on db_basket_order.basket_id=db_basket.basket_id
left join prod_workorder
on db_basket_order.workorder_id=prod_workorder.workorderid
group by db_basket.basket_id //<--unique ids
order by db_basket_order.basket_order_id desc //<--with highest order