Requetes sql avec conditions [Résolu]

Signaler
Messages postés
2
Date d'inscription
jeudi 23 juin 2011
Statut
Membre
Dernière intervention
24 juin 2011
-
Messages postés
2
Date d'inscription
jeudi 23 juin 2011
Statut
Membre
Dernière intervention
24 juin 2011
-
Bonjour,

Ca fait plusieurs jours que je bloque sur un requete :
J'aimerai pouvoir faire une seule et même requête, pour obtenir des "Gains" et "Pertes" à partir de la même table "Var" selon une condition (Var <0 ou >0)

SELECT Var AS Gains, Id
FROM Ordre
WHERE (Var > 0) AND (Id = 3)
ORDER BY Id

SELECT Var AS Pertes, Id
FROM Ordre
WHERE (Var < 0) AND (Id = 3)
ORDER BY Id

Mon but, c'est de pouvoir faire un tableau avec les gains et les pertes pour chacun de mes ID. Faut il que je crée un dataset pour chaque ID ?
Dans mon dataset, je n'arrive qu'à avoir soit Perte, soit Gain, mais jamais les deux en même temps.

Merci d'avance

2 réponses

Messages postés
1540
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
1 août 2013
11
Salut,

un truc simple que tu dois pouvoir mettre en place :

SELECT Var AS Gains, null AS Pertes, Id 
  FROM Ordre 
 WHERE (Var > 0) AND (Id = 3) 
 ORDER BY Id 
      UNION ALL
SELECT null as Gains, Var AS Pertes, Id 
  FROM Ordre 
 WHERE (Var < 0) AND (Id = 3) 
 ORDER BY Id 


(je sais pas si 'null AS fname' est correct sous SQL Server, sinon mettre 0 [zéro])

Tu peux également utiliser les CASE WHEN/IIF (je sais pas quelle méthode fonctionne sous SQL Server, mais c'est un SGBD assez bien documenté, tu devrais pas avoir de souci à trouver ton bonheur).
Messages postés
2
Date d'inscription
jeudi 23 juin 2011
Statut
Membre
Dernière intervention
24 juin 2011

Merci !!