En fait, je suis confus sur deux requêtes SQL. Les deux me donnent le même résultat mais lequel est préféré et quand utiliser chacun d'entre eux?
3 Réponses :
Vous observez le même résultat car ils signifiaient tous les deux la même signification. La différence dans les deux requêtes est la performance. Comme nous exécutons les deux requêtes, il existe une différence de performance et cela est dû au plan d'exécution que le planificateur met en place. Où la clause -> il planifère choisit un itinéraire plus efficace REJOIGNEZ -> Nous pouvons probablement faire fonctionner la jointure aussi rapide (sinon plus rapide) en ajoutant un index sur les deux colonnes. P>
Ils sont les mêmes. En fait, ils devraient générer le même plan d'exécution.
Bien qu'il n'y ait aucune raison de choisir l'un sur l'autre, le formulaire code> rejoindre code> est généralement utilisé. Il y a une raison simple: SQL Server ne prend pas en charge les alias pour la table code> update code>. Donc, cela ne fonctionne pas: p> Cependant, c'est bien: p> aussi l'utilisation de l'utilisation explicite < Code> Rejoindre Code> permet d'utiliser à l'inconvénient, la version implicite Joindre de gauche code>. p> rejoindre code> est compatible avec plus de bases de données - - En particulier, Postgres prend en charge cette syntaxe. P> P>
Il ne devrait y avoir aucune différence de performance. Vous pouvez utiliser les deux manières. Il dépend totalement de vous. P>
sont les mêmes .. L'une utilise une syntaxe de jointure explicite et la seconde utilisation (ancienne) implicite Syntaxe basée sur l'endroit où ... la première utilisation de la dernière version de jointure
Quel SGBD utilisez-vous? (C'est la syntaxe spécifique du produit.)
Dépend du produit DBMS utilisé. par exemple. Le premier serait très inefficace (au point d'être faux) à Postgres. Dans SQL standard, la relève de la mise à jour ne prend pas en charge un
de la clause code> ou des jointures pour commencer avecPour autant que je sache, seul SQL Server prend en charge ces deux requêtes, alors j'ai ajouté cette balise.