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 :

Jointure ou pas ?


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant
    Inscrit en
    Avril 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2006
    Messages : 92
    Par défaut Jointure ou pas ?
    Une petite question concernant les jointures :

    La differences entre (et l'interet d'utiliser plus l'une que l'autre) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT devices.* FROM CLIENTS 
    INNER JOIN DEVICES ON DEVICES.dev_cli_id = CLIENTS.cli_id
    WHERE CLIENTS.cli_id = '123'
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT devices.* FROM CLIENTS, DEVICES 
    WHERE DEVICES.dev_cli_id = CLIENTS.cli_id
    AND CLIENTS.cli_id = '123'
    Qui donne le meme resultat.

  2. #2
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    Hi,

    cf les cours de sqlPro

    UN CONSEIL IMPORTANT

    Dans la mesure du possible, utilisez toujours un opérateur de jointure normalisé Sql2 (mot clef JOIN).

    En effet :

    * Les jointures faites dans la clause WHERE (ancienne syntaxe de 1986 !) ne permettent pas de faire la distinction de prime abord entre ce qui relève du filtrage et ce qui relève de la jointure.
    * Il est à priori absurde de vouloir filtrer dans le WHERE (ce qui restreint les données du résultat) et de voiloir "élargir" ce résultat par une jointure dans la même clause WHERE de filtrage.
    * La lisibilité des requêtes est plus grande en utilisant la syntaxe à base de JOIN, en isolant ce qui est du filtrage et de la jointure, mais aussi en isolant avec clarté chaque condition de jointures entre chaque couples de table.
    * L'optimisation d'exécution de la requête est souvent plus pointue du fait de l'utilisation du JOIN.
    * Lorsque l'on utilise l'ancienne syntaxe et que l'on supprime la clause WHERE a des fins de tests, le moteur SQL réalise le produit cartésiens des tables ce qui revient la plupart du temps à mettre à genoux le serveur !

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant
    Inscrit en
    Avril 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2006
    Messages : 92
    Par défaut
    Merci, j'utilise ce document mais j'ai pas été dans la "partie" sur SQLpro.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Jointure qui ne renvoie pas tous les enregistrements
    Par rayonx dans le forum Langage SQL
    Réponses: 12
    Dernier message: 19/07/2024, 09h33
  2. [gros nul] jointures ou pas ?
    Par jfouche dans le forum Langage SQL
    Réponses: 6
    Dernier message: 19/10/2009, 18h10
  3. Jointure ou pas?
    Par vinzzzz dans le forum Langage SQL
    Réponses: 7
    Dernier message: 09/07/2009, 14h31
  4. Jointure ou pas
    Par PickEpique dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 04/06/2007, 20h30
  5. Like + jointure => marche pas
    Par Choupinou dans le forum Oracle
    Réponses: 10
    Dernier message: 26/06/2006, 09h18

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