Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide Recherche
2428 connectés 

  FORUM HardWare.fr
  Programmation
  SGBD/SQL

  Problème requête SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème requête SQL

n°1951184
Marro
Posté le 17-12-2009 à 14:17:29  profilanswer
 

Bonjour,
 
j'ai une requête SQL qui me ramène les lignes suivantes:
 
 
Date_debut Action Date_fin           Date_fin2   %?    %      
16/11/2009 ACT                           Y 100
08/10/2009 PAP   15/11/2009 15/11/2009 N 50
08/04/2009 PAP   07/10/2009 07/10/2009 N 50
07/04/2009 ACT                         07/04/2009 Y 100
16/12/2008 MAT   06/04/2009 06/04/2009 Y 100
02/12/2008 GPA   15/12/2008 15/12/2008 Y 100
 
En fait je voudrais que les lignes où l'action est PAP n'en fasse plus qu'une, avec:
date_debut: 08/04/2009  
Action: PAP
Date_fin: 15/11/2009
Date_fin2: 15/11/2009
%?: N
%: 100
 
Sachant que je ne peux pas faire de group by sur le champ Action (sinon les 2 actions ACT seraient regroupées et je ne le veux pas)
 
Merci pour votre aide

mood
Publicité
Posté le 17-12-2009 à 14:17:29  profilanswer
 

n°1951209
tarnx
Posté le 17-12-2009 à 14:56:26  profilanswer
 

Code :
  1. SELECT Max(Date_Debut) As [Date Debut], Action, Max(Date_Fin) As [Date Fin], Max(Date_Fin2) As [Date Fin 2], %?, SUM(%) as [%]
  2. FROM MaTable
  3. WHERE Action = 'PAP'


 
Ca me semble pouvoir fonctionner vis à vis de ce que tu demandes.

Message cité 1 fois
Message édité par tarnx le 17-12-2009 à 14:56:57
n°1951214
Tibar
Posté le 17-12-2009 à 15:00:38  profilanswer
 

Salut,
 
Petite précision, si tu veux 08/04/2009 comme date début, il faut prendre le MIN(Date_Debut)...
Par contre je ne vois pas trop comment tu pourras avoir tout en une seule requête...
 
Bon courage,

n°1951232
Marro
Posté le 17-12-2009 à 15:37:58  profilanswer
 

tarnx a écrit :

Code :
  1. SELECT Max(Date_Debut) As [Date Debut], Action, Max(Date_Fin) As [Date Fin], Max(Date_Fin2) As [Date Fin 2], %?, SUM(%) as [%]
  2. FROM MaTable
  3. WHERE Action = 'PAP'


 
Ca me semble pouvoir fonctionner vis à vis de ce que tu demandes.


 
En fait il me faut toutes les lignes :D
 

Tibar a écrit :

Salut,
 
Petite précision, si tu veux 08/04/2009 comme date début, il faut prendre le MIN(Date_Debut)...
Par contre je ne vois pas trop comment tu pourras avoir tout en une seule requête...
 
Bon courage,


 
Ouais, c'est bien ce qu'il me semblait, je vais devoir me taper une table temporaire avec un traitement à effectuer dessus :/  

n°1951241
Tibar
Posté le 17-12-2009 à 16:04:27  profilanswer
 

Oui, je pense, sinon tu ajoutes une colonne "Regroupement", tu mets une valeur identique pour toutes les lignes que tu veux regrouper, et des valeurs différentes dans toutes les autres...
Par exemple ici, tu aurais :  
 
Date_debut Action Date_fin           Date_fin2   %?    %      Regroupement
16/11/2009 ACT                           Y 100  0
08/10/2009 PAP   15/11/2009 15/11/2009 N 50  1
08/04/2009 PAP   07/10/2009 07/10/2009 N 50  1
07/04/2009 ACT                         07/04/2009 Y 100  2
16/12/2008 MAT   06/04/2009 06/04/2009 Y 100  3
02/12/2008 GPA   15/12/2008 15/12/2008 Y 100  4
 
Mais ce n'est pas très joli ni simple à maintenir...
 
Bon courage,

n°1951311
Marro
Posté le 17-12-2009 à 18:46:50  profilanswer
 

Ta solution est pas mauvaise, mais pas possible dans mon cas....
c'est pas grave, je vais faire un traitement à part pour la gestion de ma table.
 
Merci :jap:


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

  Problème requête SQL

 

Sujets relatifs
Problème requete SQL : double et différentProblème requête UPDATE SQL
probleme requete Sql sur update clef primaire[SQL]Probleme requete avec LIMIT
Probleme de requête SQL avec Windev trier par dateRequete SQL avec GROUP BY probleme
problème de requête - FREETEXTTABLE (SQL serveur)[SQL] problème requête
[ORACLE] problème requête (pour les chauds du SQL)[SQL]Problème requête simple: jointure externe
Plus de sujets relatifs à : Problème requête SQL


Hit-Parade
Copyright © 1997-2012 Hardware.fr SARL / Groupe LDLC / LesNumeriques.com / Version anglaise du site: BeHardware