Même table (criteres différents) sur MSQUERY

Même table (criteres différents) sur MSQUERY - SQL/NoSQL - Programmation

Marsh Posté le 07-08-2014 à 19:21:41    

Bonjour,  
 
Je possède une base SQL avec une table A et B, Une colonne A1 de A et B1 de B. (Une jointure est faite entre B1 et A2)
 
Seulement dans MSQUERY, je veux afficher :
 
Une colonne B1 avec en critères A1 = 1
et une autre colonne B1 avec en critère A1 = 0
 
J'ai cherché et les fonction UNION et INTERSECT ne passent pas car ça "superpose" au niveau des lignes et non des colonnes.
 
Pour l'instant j'ai ça ...
 
SELECT B1 FROM B WHERE B1=A2 AND A1=1
 
SELECT B1 FROM B WHERE B1=A2 AND A1=0
 
Comment faire apparaitre ces deux requêtes cote à cote ?
 
Merci d'avance,


Message édité par nng999 le 09-08-2014 à 15:05:51
Reply

Marsh Posté le 07-08-2014 à 19:21:41   

Reply

Marsh Posté le 08-08-2014 à 08:13:25    

Tu devrais relire ton exemple et ta description, a mon avis tu as trop simplifié et ça ne donne plus rien (A2 = 0 au lieu de A1 = 1 dans ton exemple?).
 
Tu dois aussi avoir un lien entre les deux query sinon tu vas finir avec un produit cartésien.
 
Si tu sais donner un exemple de données et de ce que tu voudrais au final ce serai plus clair.

Reply

Marsh Posté le 08-08-2014 à 09:45:05    

Tu voudrais faire un truc de ce genre ?
SELECT B1 FROM B t1 INNER JOIN B t2 ON (t1.B1 = t2.B1) WHERE
t1.B1 = A2 and t1.A1 = 0 and t2.B1 = A2 and t2.A2 = 0
 
Mais c'est vrai que sans plus de précisions, difficile de t'aider efficacement :/


---------------
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
Reply

Marsh Posté le 08-08-2014 à 13:55:30    

Oliii et Rufo ont raison, c'est pas super clair,  pas facile à décrypter et pas facile donc de t'aider...
:pt1cable:


Message édité par gpl73 le 08-08-2014 à 14:04:15

---------------
mieux vaut être un con au chaud, qu'un con gelé lol
Reply

Marsh Posté le 09-08-2014 à 15:04:58    

Pardon excusez moi je me suis trompé dans la rédaction de la requete.
 
 
SELECT B1 FROM B WHERE B1=A2 AND A1=0  
 
SELECT B1 FROM B WHERE B1=A2 AND A1=1

Reply

Marsh Posté le 11-08-2014 à 04:17:13    

up plz

Reply

Marsh Posté le 11-08-2014 à 07:59:37    

Bon,
si on s'en tient uniquement a ce que tu demandes ça donne ça:

Code :
  1. SELECT a.A2, b.A2
  2. FROM A a
  3.     CROSS JOIN A b
  4. WHERE a.A1 = 0
  5.     AND b.A1 = 1


 
Pas besoin d'inclure la table B vu que tu fais ton join sur B1 et que B1 = A2.
C'est aussi un cross join car tu n'as pas l'air d'avoir de lien entre tes deux queries.
 
Si les deux queries doivent avoir un lien je suppose que c'est ça que tu veux:

Code :
  1. SELECT a.A2, b.A2
  2. FROM A a
  3.     JOIN A b ON b.A2 = a.A2 AND b.A1 = 1
  4. WHERE a.A1 = 0


Message édité par Oliiii le 11-08-2014 à 08:00:17
Reply

Marsh Posté le 14-08-2014 à 04:22:36    

Merci de tout coeur
J'essaie et je vous tiens au courant.
Heureusement qu'il existe encore des gens comme toi sinon où irait le monde ? ! Merde !

Reply

Marsh Posté le 25-08-2014 à 14:20:15    

Ca marcherait pas ça ?
SELECT B1 FROM B WHERE B1=A2 AND A1 IN (0, 1)


---------------
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
Reply

Marsh Posté le 27-08-2014 à 08:23:02    

rufo, tu dois même pouvoir enlever le A1 in (0,1) lol
mais le soucis de nng999 c'est qu'il veut 2 colonnes avec les valeurs(b1-a1,b1-a0) , si j'ai bien tout compris...:)


---------------
mieux vaut être un con au chaud, qu'un con gelé lol
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed