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 Firebird Discussion :

update et jointure


Sujet :

SQL Firebird

  1. #21
    Membre averti
    Avatar de Superstivix
    Inscrit en
    Décembre 2003
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 250
    Points : 405
    Points
    405
    Par défaut
    Citation Envoyé par Barbibulle
    Il ne me semble pas que cette syntaxe fasse partie d'une des normes SQL. Mais je me trompe peut être.
    J'ai jamais dis que ça respectait le standard SQL, j'ai juste dis que ça fonctionnait en SQL-server et que le structure était proche de la requete initiale
    Modérateur Taverne et C++Builder
    Règles du Club - Règles de la Taverne
    FAQ BCB - sources
    Et je mords

  2. #22
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Pour la dernière fois, merci de bien vouloir utiliser les balises codes pour rendre plus lisible vos messages. Ne pas respecter les règles du forum, c'est manquer de respect à cette communauté de bénévoles.


    Citation Envoyé par frantzgac
    C'est une méthode hélàs courante quand on a pas la réponse de dire que la question est mal posée.
    De même qu'on dit qu'il n'y a pas meilleur sourd que celui qui ne veut pas entendre.
    Mais bon étant donné que vous vous êtes milles fois excusé, a mon tour de m'excuser de vous avoir un peu brusqué dans le but de vous faire entendre ma solution.

    Citation Envoyé par frantzgac
    ...j'attends que vous
    m'expliquiez en quoi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update client contrimm 
    set client.type_client=contrimm.type_client 
    where client.code_client=contrimm.code_client
    est équivalent à cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    update client 
    set client.type_client = client.type_client
    Update accepte la mise à jour que d'une seule table. Ce nom de table peut etre suivi d'un alias (que l'on choisi court en générale car plus facile à mannipuler).

    On aurait pu donc écrire ceci qui est le même ordre SQL mais qui devrait moins vous troubler ou plutot vous faire comprendre ce qui se passe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update client MonAlias 
    set client.type_client=MonAlias.type_client 
    where client.code_client=MonAlias.code_client
    Un alias peut tout a fait prendre le nom d'une table ou objet de la base, ce qui n'est pas recommandé de faire bien entendu (surtout dans un select).

    Et donc vous l'aurez compris, la clause where est toujours vrai et donc devient innutile.

Discussions similaires

  1. [SQL Serveur] update auto jointure
    Par profy dans le forum Langage SQL
    Réponses: 4
    Dernier message: 29/05/2006, 16h10
  2. Update et jointure
    Par poca10 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 18/08/2005, 15h46
  3. Update et jointure
    Par say dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 18/07/2005, 16h29
  4. [PL/SQL] update avec jointure
    Par Fox_magic dans le forum Oracle
    Réponses: 6
    Dernier message: 09/12/2004, 12h19
  5. update et jointure
    Par damn dans le forum Langage SQL
    Réponses: 8
    Dernier message: 25/02/2004, 08h44

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