select tc.UIDPK, count(torder.status) as total from TCUSTOMER tc inner join TORDER torder on tc.UIDPK=torder.CUSTOMER_UID where tc.UIDPK=490000;
La requête ci-dessus fonctionne bien pour moi. Mais le statut peut être IN_PROGRESS, FAILED, ON_HOLD
Comment écrire une requête qui renvoie un nombre de statuts comme tc.UIDPK, commandes totales, commandes IN_PROGRESS, commandes totales-commandes IN_PROGRESS. J'ai essayé ce qui suit mais je n'ai pas fonctionné
select tc.UIDPK, count(torder.status) as total, count(torder2.status) as inprogress, count(torder.status)-count(torder2.status) as remaining from TCUSTOMER tc inner join TORDER torder on tc.UIDPK=torder.CUSTOMER_UID left join TORDER torder2 on tc.UIDPK=torder2.CUSTOMER_UID and torder2.status in('IN_PROGRESS') where tc.UIDPK=490000;
Pas besoin de vous connecter plusieurs fois, utilisez SUM.
Essayez-le