将记录从一张表分组为一张

时间:2018-10-09 20:36:46

标签: sql oracle

enter image description here

基本上,我正在尝试从基于catalog_no和packing_list_no的表中检索1条记录。但是,我要从中检索信息的表具有我不需要的其他详细信息,但是将我需要的1条记录变成3条不同的记录。

我尝试对信息进行汇总和分组,但是我仍然得到3条记录,而不是1条。

关于如何解决此问题的任何想法?

1 个答案:

答案 0 :(得分:0)

您的GROUP BY将您的结果分组为已拣配的数量,已发货的数量和已发货的重量。这些列中任何一个的不同值将导致不同的行。

如果理想的结果是您指定的装箱单和编目编号,则可以一起删除GROUP BY子句。您可以使用GROUP BY子句对不使用sum分组结果集的列。

SELECT catalog_no, sum(qty_picked), sum(qty_shipped), sum(weight_shipped), packing_list_no, bay_no, carrier_code, tracking_no FROM oeorder_shipping
WHERE packing_list_no='CP12618525' AND catalog_no='437656500'
GROUP BY bay_no, carrier_code, tracking_no;