Voici ma requête SQL jusqu'à présent et ma sortie actuelle est la suivante: p> p> < P> ** J'ai ajouté le sup_id à ma déclaration de sélection, alors je sais que c'est un fournisseur différent. Donc, ce que j'essaie de faire est d'obtenir le total de ces pendements et complété p> la sortie doit être comme ceci: p>
3 Réponses :
Vous pouvez définir une requête parent avec groupe par code>, à l'aide de votre requête existante:
@kPatch pouvez-vous s'il vous plaît réessayer?
Et ça? Code dont vous avez besoin est de la ligne n ° 12 en avant.
SQL> with test (emp_id, status, sup_id) as 2 (select 102, 'P', 19 from dual union all 3 select 102, 'P', 76 from dual union all 4 select 103, 'C', 19 from dual union all 5 select 104, 'C', 75 from dual union all 6 select 107, 'C', 74 from dual union all 7 select 107, 'P', 73 from dual union all 8 select 110, 'C', 19 from dual union all 9 select 110, 'P', 15 from dual union all 10 select 110, 'P', 17 from dual 11 ) 12 select emp_id, 13 sum(case when status = 'P' then 1 else 0 end) pending, 14 sum(case when status = 'C' then 1 else 0 end) completed, 15 count(*) all_orders 16 From test 17 group by emp_id 18 order by emp_id; EMP_ID PENDING COMPLETED ALL_ORDERS ---------- ---------- ---------- ---------- 102 2 0 2 103 0 1 1 104 0 1 1 107 1 1 2 110 2 1 3 SQL>
Essayez ci-dessous Query
SELECT sum(DECODE(o.status, 'P', 1, 0)) PENDING,sum(DECODE(o.status, 'C', 1, 0)) COMPLETED, o.sup_id FROM L4_Orders o, L4_suppliers s, L4_sup_pro sp, L4_details d, L4_products p, L4_inventories i WHERE o.sup_id = s.id AND s.id = sp.sup_id AND o.id = d.ord_Id AND d.pro_id = p.our_id AND p.our_id = sp.pro_id AND p.our_id = i.pro_id AND province = 'BC' group by o.emp_id ORDER BY o.emp_id;
Qu'est-ce qui ne fonctionne pas? Est
somme (décodage (O.Status, 'p', 1, 0)) code> etc non ce dont vous avez besoin?
Comment les ajoutez-vous avec le statut terminé?
Vous ajoutez des valeurs à l'aide de l'opérateur
+ code>. Qu'est-ce qui ne fonctionne pas?