[SQL] jointure particuliere

jointure particuliere [SQL] - SQL/NoSQL - Programmation

Marsh Posté le 26-05-2005 à 13:51:29    

:hello:  
 
J'ai 2 tables
 


Table_1
id   |    nom
1    |   hehe
2    |   haha
..........



Table_2
id   |  id_table1
1    |  1


 
ma requete

SELECT *  
FROM Table_1,Table_2  
WHERE id_table1=table_1.id


 
Le resultat que j'aimerais avoir


table_1.id    |   table_2.id   |    nom   | id_table1
1             |   1            |   hehe   | 1
2             |   NULL         |   haha   | 2


 
Pour résumer: je voudrais que lorsque la jointure n'est pas possible, le champ de la table 1 soit tout de mm present dans le resultat.
 
Une idée?


Message édité par ffomnislash le 26-05-2005 à 13:57:32
Reply

Marsh Posté le 26-05-2005 à 13:51:29   

Reply

Marsh Posté le 26-05-2005 à 13:53:00    

Je suis pas certain d'avoir tout compris..
 
Select * from  Table_1, Table_2 ??
 
Edit: Ca sert à quoi les titres...


Message édité par cesarr89 le 26-05-2005 à 13:53:30
Reply

Marsh Posté le 26-05-2005 à 13:56:40    

ffomnislash a écrit :

:hello:  
 
J'ai 2 tables
 


Table_1
id   |    nom
1    |   hehe
2    |   haha
..........



Table_2
id   |  id_table1
1    |  1


 
ma requete

SELECT *  
FROM Table_1,Table_2  
WHERE id_table1=table_1.id


 
Le resultat que j'aimerais avoir


table_1.id    |   table_2.id   |    nom   | id_table1
1             |   1            |   hehe   | 1
2             |   NULL         |   haha   | 2


 
Pour résumer: je voudrais que lorsque la jointure n'est pas possible, le champ de la table 1 soit tout de mm present dans le resultat.
 
Une idée?


il faut te documenter sur la notion de jointure externe et la manière dont elle s'exprime dans ton SGBD.

Reply

Marsh Posté le 26-05-2005 à 13:58:06    

Avec Oracle, tu peux faire ça :
 

Code :
  1. SELECT t1.id, t2.id, t1.nom, t2.id_table1
  2. FROM Table_1 t1, Table_2 t2
  3. WHERE t1.id = t2.id_table1 (+)


 
Sinon pour les autres SGBD, la syntaxe est un plus lourde et ne l'ai jamais utilisée.
J'la connais pas par coeur et je ne voudrais pas dire de bétises ;)


Message édité par Vinx le 26-05-2005 à 13:59:12

---------------
Slack powa | http://www.racingpneu.com
Reply

Marsh Posté le 26-05-2005 à 13:58:08    

dsl pour le tite, j'avais oublié de le terminer ^^
 
"jointure externe" ok je vais voir ca , je bosse sous access pour info.

Reply

Marsh Posté le 26-05-2005 à 13:59:39    

jointure externe : outer join en anglais

Reply

Sujets relatifs:

Leave a Replay

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