Afficher les valeurs null d'un COUNT
Résolu/Fermé
juliusescalibus
Messages postés
39
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
3 octobre 2014
-
6 févr. 2014 à 09:53
juliusescalibus Messages postés 39 Date d'inscription jeudi 9 janvier 2014 Statut Membre Dernière intervention 3 octobre 2014 - 7 févr. 2014 à 08:02
juliusescalibus Messages postés 39 Date d'inscription jeudi 9 janvier 2014 Statut Membre Dernière intervention 3 octobre 2014 - 7 févr. 2014 à 08:02
A voir également:
- Afficher les valeurs null d'un COUNT
- Afficher mot de passe wifi android - Guide
- Afficher appdata - Guide
- Afficher les commentaires word - Guide
1 réponse
juliusescalibus
Messages postés
39
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
3 octobre 2014
7 févr. 2014 à 08:02
7 févr. 2014 à 08:02
voici le moyen de le faire:
select d.DO_NomCli,d.nbdevis,c.nbcdes,cast(round((cast(c.nbcdes as decimal(10,2))/cast(d.nbdevis as decimal(10,2))) * 100, 2)as decimal(10,2)) as TxTrsf from ( SELECT FinDevis.DO_NomCli, COUNT (DISTINCT FinDevis.do_piece) as nbdevis FROM FinDevis WHERE findevis.DO_Date BETWEEN '01/01/2012' AND '29/01/2014'
GROUP BY FinDevis.DO_NomCli ) as D
left outer join (
select FinCommande.DO_NomCli, COUNT (FinCommande.DO_Piece) as nbcdes from FinCommande where FinCommande.do_date between '01/01/2012' and '29/01/2014'
and (FinCommande.DO_Piece IN (SELECT DO_Piece FROM ACIBOIS.dbo.F_DOCLIGNE) or FinCommande.DO_Piece IN (SELECT DL_PieceBC FROM ACIBOIS.dbo.F_DOCLIGNE)) group by FinCommande.DO_NomCli ) as C ON D.DO_NomCli=C.DO_NomCli
order by d.DO_NomCli
select d.DO_NomCli,d.nbdevis,c.nbcdes,cast(round((cast(c.nbcdes as decimal(10,2))/cast(d.nbdevis as decimal(10,2))) * 100, 2)as decimal(10,2)) as TxTrsf from ( SELECT FinDevis.DO_NomCli, COUNT (DISTINCT FinDevis.do_piece) as nbdevis FROM FinDevis WHERE findevis.DO_Date BETWEEN '01/01/2012' AND '29/01/2014'
GROUP BY FinDevis.DO_NomCli ) as D
left outer join (
select FinCommande.DO_NomCli, COUNT (FinCommande.DO_Piece) as nbcdes from FinCommande where FinCommande.do_date between '01/01/2012' and '29/01/2014'
and (FinCommande.DO_Piece IN (SELECT DO_Piece FROM ACIBOIS.dbo.F_DOCLIGNE) or FinCommande.DO_Piece IN (SELECT DL_PieceBC FROM ACIBOIS.dbo.F_DOCLIGNE)) group by FinCommande.DO_NomCli ) as C ON D.DO_NomCli=C.DO_NomCli
order by d.DO_NomCli