Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/08/2011, 19h53   #1
Futur Membre du Club
 
Homme Ayoub Zamouchi
Étudiant
Inscription : juillet 2011
Messages : 47
Détails du profil
Informations personnelles :
Nom : Homme Ayoub Zamouchi
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2011
Messages : 47
Points : 16
Points : 16
Par défaut Probleme de jointure Interne

Bonjour,
J'ai deux tables ,Table_A ,Table_B
ma requête doit me retourner les valeurs de la table B qui ne figure pas dans la table A, pour cela je fais une Jointure Interne comme suit :
Code :
1
2
3
 
SELECT *
FROM Table_B INNER JOIN Table_A ON Table_B.clé != Table_A.clé
le problème est que quand la Table_A contient des valeurs, ces derniers ne figure pas dans le résultat ce qui est bon, mais quand elle est vide normalement j’obtiens tout les valeurs de la Table_B !! mais ce n'est pas le cas , j'obtiens aucun valeurs mois !! je vois pas ou est le problème
J'attends votre aide.
Merci
zayoub est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2011, 07h54   #2
Invité régulier
 
Inscription : juillet 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 15
Points : 7
Points : 7
Salut,

Code :
1
2
3
 
SELECT *
FROM Table_B INNER JOIN Table_A ON Table_B.clé != Table_A.clé
A remplacer par :
Code :
1
2
3
4
5
6
7
8
 
SELECT *
FROM Table_B 
WHERE Table_B.clé NOT IN
(
SELECT Table_A.clé 
FROM Table_A
)
A la place du "NOT IN" tu peux utiliser "NOT EXISTS" selon l'importances des données, de mémoire "NOT EXISTS" est plus performant sur un nombre d'enregistrement peu important que "NOT IN" ou l'inverse.
Barbrady est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2011, 16h55   #3
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 520
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 520
Points : 3 967
Points : 3 967
Code :
1
2
3
4
5
SELECT B.* 
FROM Table_A AS A
RIGHT OUTER JOIN Table_B AS B
	ON A.clef = B.clef
WHERE A.clef IS NULL
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 18/08/2011, 17h58   #4
Modérateur

 
Avatar de elsuket
 
Homme Nicolas Souquet
Administrateur de base de données
Inscription : janvier 2005
Messages : 4 669
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Souquet
Âge : 30
Localisation : Thaïlande

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2005
Messages : 4 669
Points : 8 729
Points : 8 729
Bonjour,

A lire.

@++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes.
Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012
elsuket est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/08/2011, 01h22   #5
Futur Membre du Club
 
Homme Ayoub Zamouchi
Étudiant
Inscription : juillet 2011
Messages : 47
Détails du profil
Informations personnelles :
Nom : Homme Ayoub Zamouchi
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2011
Messages : 47
Points : 16
Points : 16
Citation:
Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
Merci Beaucoup ça marche !
zayoub est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h04.


 
 
 
 
Partenaires

Hébergement Web