Hej Arne, jeg har denne sql i dag. Den giver mig "korrekt" udtræk.
SELECT p.short_description, ol.id, p.shop_id, p.name, (p.price_dk * 1.25) as price, p.quantity, SUM( ol.quantity ) as antal, SUM( ol.quantity * ol.price * 1.25) as oms FROM orders_orderline ol INNER JOIN products_product p ON ol.product_id = p.id INNER JOIN orders_order o ON ol.order_id = o.id %s GROUP BY ol.product_id ORDER BY oms DESC
Men jeg skal tilføje følgende:
substring_index(shop_id, "-",1) AS newGroup
Og så skal ovenstående resultat grupperes og hver "gruppe" skal så have antal, quantity og oms summeret.
SELECT x.newGroup,SUM(x.lager), SUM(x.antal), SUM(x.oms) FROM (SELECT ol.id, substring_index(shop_id, "-",1) AS newGroup, p.quantity as lager, SUM( ol.quantity ) as antal, SUM( ol.quantity * ol.price * 1.25) as oms FROM orders_orderline ol INNER JOIN products_product p ON ol.product_id = p.id INNER JOIN orders_order o ON ol.order_id = o.id WHERE `o`.`order_currency` = 'DKK' AND `o`.`order_status` IN ('SH', 'CR') GROUP BY ol.product_id ORDER BY oms DESC) x GROUP BY x.newGroup
Tak for hjælpen Arne. Jeg har rodet lidt med mongo og der kan man netop bruge deres aggregation framework, hvor man tager et resultat og piper det videre og videre. Vidste ikke man kunne det samme i mysql. Men så blev jeg da så klog. Det giver jo uanede muligheder, som jeg tidligere har måtte løse kodemæssigt.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.