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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MYSQL problème count via out join

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

MYSQL problème count via out join

n°2204839
hyptnos
GT : Gui iom
Posté le 01-10-2013 à 10:43:31  profilanswer
 

Bonjour à tous je galère depuis quelque jours et je viens demander de l'aide à la communauté.
 
J'ai une application en cours de développement et je suis entrain de faire des statistiques sur les dossiers de l'application.
Je vais pas tout détailler les stats que je dois faire la se base sur 2 table
 
J'ai donc une table t_dossier et une table t_jugement
la table dossier à un champs RID_ID et la table jugement un champs T_DOSSIER_RID_ID : cela permet donc de faire la relation.
Dans la table jugement j'ai en autre  
1 champ JUG_SENS pour mettre le sens du jugement
1 champs JUG_DATE pour la date du jugement.
 
Et dans la table dossier j'ai un champs RID_ID_DEFENSEUR qui stock l'identifiant du service défendeur (oui y une faute de frappe )
donc
je dois dire combien de dossier non juge il y à par chaque service défendeur.  
Sachant qu'un dossier non juger est définit par la non présensence du dossier dans la table jugement mais aussi il se peut qu'il y a des information de saison dans la table jugement (dautre champs) pour un dossier mais c'est pas pour autant qu'il est juger (peut y avoir des champs d'information) c'est pourquoi si c'est le cas un dossier non juger mais donc l ID du dossier est présent dans jugement est définit par la valeur du champs JUG_SENS à "n" et JUG_DATE à '0000-00-00'
 
Voila pour l'histoire.
 
Donc dans un premier temps j'ai fait la requete pour l'ensemble des dossier jusque la pas de soucis la requete en elle meme est
 

Code :
  1. SELECT COUNT(a.RID_ID) AS NB
  2. FROM t_dossier AS a
  3. LEFT OUTER JOIN t_jugement AS c
  4. ON ( c.T_DOSSIER_RID_ID = a.RID_ID )
  5. WHERE
  6. c.T_DOSSIER_RID_ID = a.RID_ID AND
  7. c.JUG_DATE = '0000-00-00' AND
  8. (c.JUG_SENS = 'n' OR c.JUG_SENS = NULL ) OR
  9. c.T_DOSSIER_RID_ID IS NULL


 
cela fonctionne bien mais si je rajoute une ligne pour identifiant du défendeur cela marche plus  
genre
 

Code :
  1. SELECT COUNT(a.RID_ID) AS NB
  2. FROM t_dossier AS a
  3. LEFT OUTER JOIN t_jugement AS c
  4. ON ( c.T_DOSSIER_RID_ID = a.RID_ID )
  5. WHERE
  6. a.RID_ID_DEFENSEUR = '3' AND
  7. c.T_DOSSIER_RID_ID = a.RID_ID AND
  8. c.JUG_DATE = '0000-00-00' AND
  9. (c.JUG_SENS = 'n' OR c.JUG_SENS = NULL ) OR
  10. c.T_DOSSIER_RID_ID IS NULL


 
une idée ?
 
merci d'avance

mood
Publicité
Posté le 01-10-2013 à 10:43:31  profilanswer
 

n°2204849
hyptnos
GT : Gui iom
Posté le 01-10-2013 à 11:03:57  profilanswer
 

Par contre si je fait un RIGHT OUTER c'est deja mieu
Seulement il me prend pas les condition (JUG_DATE et JUG_SENS) il me totalise le tout meme si la date est rempli et le sens est différent de n
 
donc requete
 

Code :
  1. SELECT c.T_DOSSIER_RID_ID, COUNT(a.RID_ID) AS NB
  2.     FROM t_dossier AS a
  3.     RIGHT OUTER JOIN t_jugement AS c
  4.     ON ( c.T_DOSSIER_RID_ID = a.RID_ID )
  5.     WHERE
  6.     a.RID_ID_DEFENSEUR = '2' AND
  7.     c.T_DOSSIER_RID_ID = a.RID_ID AND
  8.     c.JUG_DATE = '0000-00-00' AND
  9.     (c.JUG_SENS = 'n' OR c.JUG_SENS = NULL ) OR
  10.     c.T_DOSSIER_RID_ID IS NULL

n°2204876
hyptnos
GT : Gui iom
Posté le 01-10-2013 à 13:27:59  profilanswer
 

Bon bah j'ai trouver tout seul a force de bidouiller la requete.
 
je met la solution en cas ou
 

Code :
  1. SELECT a.RID_ID
  2.       FROM t_dossier AS a
  3.     LEFT OUTER JOIN t_jugement AS c
  4.     ON ( c.T_DOSSIER_RID_ID = a.RID_ID)
  5.      WHERE
  6.     (c.JUG_DATE = '0000-00-00' OR
  7.     (c.JUG_SENS = 'n' OR c.JUG_SENS = NULL ) OR
  8.      c.T_DOSSIER_RID_ID IS NULL ) AND a.RID_ID_DEFENSEUR = 'ici l'identifiant du service"


 
Peut etre y à t'il plus propre par contre ?


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

  MYSQL problème count via out join

 

Sujets relatifs
Problème programmation VBAproblème VBA avec Find/Replace
Probleme syntaxe ? [résolu]Problème affichage widget Twitter sur site web mobile
Probleme avec les .floatContent sur dreamweaverProbléme IMAGE pour mon site
faire un somme de resultat obtenu dans un champ en php mysqlProbleme constructeurs héritage
configuration MYSQL ou APACHE 
Plus de sujets relatifs à : MYSQL problème count via out join


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