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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] REQUETE sur laquelle je Seche, Please HELP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL] REQUETE sur laquelle je Seche, Please HELP

n°1409597
massamu
Posté le 19-07-2006 à 16:50:50  profilanswer
 

bijour msieur dame :jap:
 
Dans le cadre du boulot je seche sur une requete, je vous la présente cette coquine :
 
Table 1
---------
Date  -  Val   - Type
-----------------
06/06 -  10    -   1
06/06 -  15    -   1
06/06 -  7      -   2
06/06 -  11     -  4
07/06 -  25     -  4
 
Je voudrais donc dans ce cas précis obtenir :
 
(10 + 15) / (7 + 11)
 
En gros pouvoir faire la SOMME(VAL) pour le TYPE (1) Diviser par SOMME(VAL) pour type (2,4) et tout ca par MOIS ET ANNE
 
snif vous voyez pourquoi je seche, c'est pas rien cette requete :(  : :sweat:  
 
Merci d'avance


Message édité par massamu le 19-07-2006 à 16:51:07
mood
Publicité
Posté le 19-07-2006 à 16:50:50  profilanswer
 

n°1409612
anapajari
s/travail/glanding on hfr/gs;
Posté le 19-07-2006 à 17:09:31  profilanswer
 

Code :
  1. select
  2. annee,
  3. mois,
  4. sum(val * case type when 1 then 1 else 0 end) /  (case  when sum(val * case type when 1,2 then 1 else 0 end) is null then 1 when sum(val * case type when 1,2 then 1 else 0 end)=0 then 1 else sum(val * case type when 1,2 then 1 else 0 end) )
  5. from
  6. tatable
  7. group by
  8. rollup(annee,mois)


 
edit: mise en page, s'pas facile :o


Message édité par anapajari le 19-07-2006 à 17:10:20
n°1409613
orafrance
Posté le 19-07-2006 à 17:10:08  profilanswer
 

Code :
  1. SELECT SUM(val), type, mois, annee
  2. (
  3. SELECT val, DECODE(type, 1,1, 2) type, mois, annee
  4. from table
  5. )
  6. GROUP BY type, mois, annee;


Message édité par orafrance le 19-07-2006 à 17:10:27
n°1409626
massamu
Posté le 19-07-2006 à 17:19:59  profilanswer
 

J'ai oublié de vous dire, c'est sur SQL SERVER
 
donc pour :
 
anapajari -> y'a une erreur de virgule mais je n'arrive pas a la trouver
 
orafrance -> DECODE ne fonctionne pas sous SQL SERVER 2000 :(
 
Le probleme reste entier

n°1409632
anapajari
s/travail/glanding on hfr/gs;
Posté le 19-07-2006 à 17:27:20  profilanswer
 

c'est le case when 1,2 qu'il doit pas aimer ( en plus cela doit être 2,4) et pour finir il doit manquer un end ...
change la grosse ligne en:

Code :
  1. sum(val * case type when 1 then 1 else 0 end) /  (case  when sum(val * case type when 2 then 1 when 4 else 0 end) is null then 1 when sum(val * case type when 2 then 1 when 4 then 1 else 0 end)=0 then 1 else sum(val * when 2 then 1 when 4 then 1 else 0 end) end)


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

  [SQL] REQUETE sur laquelle je Seche, Please HELP

 

Sujets relatifs
Pb requête sql[Access] SQL direct et formulaire
Copier le résultat d'une requête sql dans un tableau en C++Help !!! Problème d'affichage de page
Probleme de création de requête SQL un peu compliqué !duplicate entry for key sur une requete UPDATE
Probleme insert [PHP/SQL]Un wizard pour la généralisation des requêtes SQL
c# requete parametree 
Plus de sujets relatifs à : [SQL] REQUETE sur laquelle je Seche, Please HELP


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