IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Syntaxe des jointures a droite/gauche dans le WHERE


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 197
    Points : 64
    Points
    64
    Par défaut Syntaxe des jointures a droite/gauche dans le WHERE
    Bonjour,

    Je sais que pour faire des jointures, on peux soit, les faires dans le FROM avec JOIN ON ... et faire des jointure à droite/gauche, externe...

    On peux aussi faire des jontures dans le WHERE etudiant.classe_id = classe.classe_id

    Dans ce 2ème cas, comment fait on les jointure à droite/gauche et les externe ?

    =* et *= ???

    Merci à vous.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    Par défaut
    Cette syntaxe particulière est celle utilisée par Oracle et ne correspond nullement à la norme SQL
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 197
    Points : 64
    Points
    64
    Par défaut
    Et donc pour faire une jointure droite/gauche/externe dans le WHERE ? Obligé de jouer avec les is null ?

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    Par défaut
    Citation Envoyé par gregb34
    Et donc pour faire une jointure droite/gauche/externe dans le WHERE ? Obligé de jouer avec les is null ?
    Si la jointure standard LEFT|RIGHT OUTER JOIN n'est pas supportée, ni aucune notation exotique du style *= ou +=, en effet pas d'autre choix.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    Cela n'est PAS POSSIBLE !

    En effet le seul moyen en SQL de faire des jointures EXTERNE est LEFT ou RIGHT ou FULL [OUTER] JOIN et se fait EXCLUSIVEMENT dans la clause FROM.

    Certines syntaxes anciennes propre à des éditeurs comme Oracle, Sybase ou SQL Server permettaient autrefois de faire cela dans la clause WHERE. MAIS les résultats qui en découlent peuvent ne pas corrspondre à la syntaxe normative. Il est donc plus que déconseillé d'utiliser de telles syntaxes propriétaire !

    De même il est FORTEMENT conseillé de faire toutes ses jointures dans le FROM même en INNER JOIN plutît que dans la clause WHERE !

    Pour vous y aider, mon site, comme mes livres vous seront cerainesment utile. En particulier : http://sqlpro.developpez.com/cours/sqlaz/jointures/#L2

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. probleme fléche droite & gauche dans JOptionPane
    Par gnaoui_9999 dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 24/01/2010, 09h16
  2. Comment afficher des onglets de droite à gauche ?
    Par Dchin95 dans le forum Débuter
    Réponses: 2
    Dernier message: 26/07/2009, 14h47
  3. Ecrire de droite à gauche dans un memo
    Par kroma23 dans le forum Débuter
    Réponses: 5
    Dernier message: 20/12/2008, 13h52
  4. jComboBox alignement des items de droite à gauche
    Par RouRa22 dans le forum Composants
    Réponses: 3
    Dernier message: 12/09/2008, 12h55
  5. ajouter une langue s'ecrivant de droite à gauche dans delphi7
    Par iam dans le forum Bases de données
    Réponses: 2
    Dernier message: 09/07/2006, 12h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo