Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1071 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Resultat de 2 requetes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Resultat de 2 requetes

n°2302841
sebqui
Posté le 04-07-2017 à 14:37:54  profilanswer
 

Bonjour,
 
Je souhaite faire une requête qui donne le résultat de 2 requêtes :
J'ai la première requête qui me donne les besoins de matière pour le mois choisi
 
select PARACALC.ValParaAlpha13 'Ref chant',
 
sum(case when PARACALC.ValParaAlpha1 In ('TOTAL') OR PARACALC.ValParaAlpha2 In ('TOTAL') OR PARACALC.ValParaAlpha3 In ('TOTAL') OR PARACALC.ValParaAlpha4 In ('TOTAL') then  
     (PARACALC.ValParaNum1+PARACALC.ValParaNum2)*2/1000 else  
     case when PARACALC.ValParaAlpha1 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum1/1000 else 0 end +
     case when PARACALC.ValParaAlpha2 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum1/1000 else 0 end +
     case when PARACALC.ValParaAlpha3 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum2/1000 else 0 end +
     case when PARACALC.ValParaAlpha4 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum2/1000 else 0 end
end *1.2) as 'Conso du mois'
from paracalc
join COMC on PARACALC.CodeTableParametre=comc.CodeTableParametre
join COME on comc.NoAccuseRecepto=come.NoAccuseReception
where come.AnneeSouhPlusTard=2017 and datepart(mm,come.DateSouhaiteePlustard)=6 and (PARACALC.ValParaAlpha13 like ('PVC%') or PARACALC.ValParaAlpha13 like ('ABS%'))
group by paracalc.ValParaAlpha13
order by PARACALC.ValParaAlpha13 desc  
 
et j'ai la 2 requête qui me donne le besoin futur :
select PARACALC.ValParaAlpha13 'Ref chant'
,sum(case when PARACALC.ValParaAlpha1 In ('TOTAL') OR PARACALC.ValParaAlpha2 In ('TOTAL') OR PARACALC.ValParaAlpha3 In ('TOTAL') OR PARACALC.ValParaAlpha4 In ('TOTAL') then  
     (PARACALC.ValParaNum1+PARACALC.ValParaNum2)*2/1000 else  
     case when PARACALC.ValParaAlpha1 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum1/1000 else 0 end +
     case when PARACALC.ValParaAlpha2 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum1/1000 else 0 end +
     case when PARACALC.ValParaAlpha3 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum2/1000 else 0 end +
     case when PARACALC.ValParaAlpha4 In ('Chant ALU','Chant PVC') then PARACALC.ValParaNum2/1000 else 0 end
end *1.2) 'Besoin'
from paracalc
join COMC on PARACALC.CodeTableParametre=comc.CodeTableParametre
join COME on comc.NoAccuseRecepto=come.NoAccuseReception
where come.AnneeSouhPlusTard=2017 and datepart(mm,come.DateSouhaiteePlustard)>6 and (PARACALC.ValParaAlpha13 like ('PVC%') or PARACALC.ValParaAlpha13 like ('ABS%'))
group by paracalc.ValParaAlpha13,COME.AnneeSouhPlusTard
order by PARACALC.ValParaAlpha13 desc
 
Le problème est que je ne sais pas comment réunir les 2 requêtes pour avoir un résultat du type :
Ref chant     Conso du mois     Besoin
Chant 1         10                      20
chant 2                                  15
chant 3          5                       0
 
Si quelqu'un peux m'aider  
Merci.

mood
Publicité
Posté le 04-07-2017 à 14:37:54  profilanswer
 

n°2302848
rufo
Pas me confondre avec Lycos!
Posté le 04-07-2017 à 15:24:04  profilanswer
 

Tu fais une requête qui, dans son FROM, contient tes 2 sous-requêtes et tu fais la jointure sur le champ qui va bien ("Ref chant" apparemment).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2303083
sebqui
Posté le 08-07-2017 à 12:16:10  profilanswer
 

Désole ça ne fait pas très longtemps que je fait du sel et je ne comprend pas ta réponse

n°2303104
rufo
Pas me confondre avec Lycos!
Posté le 08-07-2017 à 18:44:32  profilanswer
 

Dans la clause from, tu mets tes 2 sous requêtes :
SELECT .... FROM (SELECT ... FROM ... WHERE ...) AS sousreq1, (SELECT ... FROM ... WHERE ...) AS sousreq2 WHERE sousreq1.refchant = sousreq2.refchant
 
Bref, un truc du genre.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2303114
sebqui
Posté le 09-07-2017 à 08:58:52  profilanswer
 

Ok merci je test lundi

n°2303137
sebqui
Posté le 10-07-2017 à 11:14:24  profilanswer
 

MERCI ça marche nickel

n°2303138
rufo
Pas me confondre avec Lycos!
Posté le 10-07-2017 à 11:36:58  profilanswer
 

Bien content pour toi ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Resultat de 2 requetes

 

Sujets relatifs
[MSSQL][T-SQL] résultat de 2 requêtes dans un maildivision du resultat de deux requetes sql
fusionner le résultat de deux requêtes MySQL [Résolu]Trier résultat de 2 requetes
Problème : Requêtes sans résultatCombiner le résultat de deux requêtes sur une même table
Assembler le résultat de deux requetes sur une seule ligneAdditionner les résultat de deux requêtes SQL en access SQL
[Résolu][MySQL] Résultat de 2 requêtes regroupé en 1afficher un tableau donnant le résultat de requetes SQL
Plus de sujets relatifs à : Resultat de 2 requetes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR