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

Requêtes MySQL Discussion :

delete sur une table avec jointure


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 137
    Points : 62
    Points
    62
    Par défaut delete sur une table avec jointure
    Bonjour,

    Je voudrais effacer une ligne de ma table document en faisant la jointure sur ma table fonction. Dès que, je lance ma requête il me dit que le champ personne.idpersonne est inconnu dans la clause where.

    J'ai essayé de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    delete from document 
    where document.NomDocument like 'doctest3' 
      and document.idpersonne = fonction.idpersonne
      and document.idversion =6 
      and fonction.libfonction='ingénieur'
    ==> Champ 'fonction.idpersonne' inconnu dans where clause

    J'ai donc essayé de rajouter personne dans le from :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    delete from document, personne 
    where document.NomDocument like 'doctest3' 
      and document.idpersonne = fonction.idpersonne
      and document.idversion =6 
      and fonction.libfonction='ingénieur'
    ==> Erreur de syntaxe près de 'where document.NomDocument like 'doctest3' and document.idpersonne = fonction.idpersonne'

    Ma table document se structure de la façon suivante:

    Document
    NomDoc
    idpersonne
    idversion

    fonction
    idpersonne
    libfonction

    Avez vous une idée de comment résoudre ce problème ?

    Merci.

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 137
    Points : 62
    Points
    62
    Par défaut
    J'ai finalement trouvé en allant sur la doc de mySQL comme quoi ça peut aider avant de poster .

    http://dev.mysql.com/doc/refman/5.0/fr/delete.html

    J'ai fais comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    DELETE document FROM document, personne 
    WHERE document.NomDocument LIKE 'doctest3' 
      AND document.idpersonne = fonction.idpersonne
      AND document.idversion =6 
      AND fonction.libfonction='ingénieur'
    Youpii

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Avec une jointure normalisée, ça aurait été encore mieux.

    Par ailleurs, LIKE 'unevaleur' est équivalent à = 'unevaleur'. L'utilisation de LIKE n'a de sens qu'avec un caractère générique % ou _.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

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

Discussions similaires

  1. [HQL] Update HQL sur une table avec Id composite
    Par Eccoon dans le forum Hibernate
    Réponses: 5
    Dernier message: 02/04/2007, 12h10
  2. Pb sur une requete avec jointure droite
    Par crashyear dans le forum Langage SQL
    Réponses: 3
    Dernier message: 06/02/2007, 08h06
  3. probleme de delete sur une table avec somation
    Par galaad666 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 23/10/2006, 16h44
  4. Jointures externes sur une table de jointure
    Par mart1 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/10/2006, 01h33
  5. Réponses: 12
    Dernier message: 12/06/2006, 14h29

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