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

SQL Oracle Discussion :

Requete corrélée ou simple sous-requête


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut Requete corrélée ou simple sous-requête
    Bonsoir,

    Existe-t-il des requêtes qui ne peuvent être écrites que sous la forme de sous-requêtes simples ?

    Je ne vois que 2 solutions pour écrire des requêtes soit les jointures soit les requêtes corrélées (synchronisées).

    Merci de vos suggestions et surtout si vous pouvez m'expliquer dans quel cas (s'il en existe) vaut-il mieux utiliser une sous-requête simple plutôt qu'une corrélée, merci encore.

  2. #2
    Membre très actif Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 940
    Par défaut
    Tout dépend du résultat escompté et du SD (Data Schema). Il n'y a pas de règles de préférence particulières, leur utilisation n'est pas forcément la même.
    Exemple de sous-requête simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM t1 WHERE 'A' IN (SELECT atn FROM t2)
    .

  3. #3
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut requêtes et règles sémantiques
    Bonsoir,
    existe-t-il des règles sémantiques qui permettent de savoir s'il faut employer une jointure, une sous-requête, une sous-equête synchronisée

    La seule que je connaisse est pour la division avec le double NOT EXISTS.

    Merci de vos sugestions

  4. #4
    Membre très actif Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 940
    Par défaut
    Il ne s'agit pas trop de règles sémantiques mais plutôt d'optimisation permettant d'atteindre les meilleurs temps de réponse dans l'obtention du résultat demandé.
    Le plus radical est de soumettre la requête à l'optimiseur et de joger de la pertinence au vu du plan d'exécution retenu.

    .

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

Discussions similaires

  1. Sous-requête corrélée ne fonctionne pas
    Par Sylvain74 dans le forum Access
    Réponses: 5
    Dernier message: 19/09/2008, 08h35
  2. Requete UPDATE avec sous-requète
    Par alaingui dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 27/06/2008, 21h16
  3. Structure récursive ou simple sous-requête ?
    Par RomainVALERI dans le forum Langage SQL
    Réponses: 5
    Dernier message: 05/06/2008, 09h10
  4. [connect by] Sous-requêtes corrélées
    Par raj dans le forum SQL
    Réponses: 2
    Dernier message: 27/07/2007, 15h49
  5. Plantage requete SQL simple sous Delphi7/ADO avec Access
    Par tomy29 dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/08/2005, 11h09

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