Précédent   Forum du club des développeurs et IT Pro > Bases de données > PostgreSQL > Requêtes
Requêtes Forum d'entraide sur les requêtes SQL spécifiques à PostgreSQL, les triggers, les vues, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 14/12/2012, 09h52   #1
nats76
Invité de passage
 
Homme Stanislas Latron
Étudiant
Inscription : octobre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Stanislas Latron
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2012
Messages : 4
Points : 2
Points : 2
Par défaut Update INNER JOIN

Bonjour, j'ai lu les sujets à ce propos, donc j'ai fait mes recherches de mon côté et corrigé une partie de ma requête. Cependant, elle ne passe pas et je ne comprends pas vraiment pourquoi...

Je vous laisse le code :

Code :
1
2
3
4
5
UPDATE ingredient 
SET stock = stock + 5  
FROM ingredient 
INNER JOIN fournisseur ON ingredient.idfour = fournisseur.idfour
WHERE fournisseur.ville = 'Le Havre';
Merci de votre aide, qui me sera précieuse ^^
nats76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 09h57   #2
tatayo
Expert Confirmé
 
Homme
Responsable de service informatique
Inscription : janvier 2009
Messages : 1 549
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 39
Localisation : France

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Boutique - Magasin

Informations forums :
Inscription : janvier 2009
Messages : 1 549
Points : 3 094
Points : 3 094
Bonjour,
Je dirais qu'il y a un point-virgule en trop à la fin de la ligne 4.

Tatayo.
tatayo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 10h08   #3
nats76
Invité de passage
 
Homme Stanislas Latron
Étudiant
Inscription : octobre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Stanislas Latron
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2012
Messages : 4
Points : 2
Points : 2
Mince, une erreur de ma part ça.

Sinon non, ce n'est pas ça. Postgres me donne cette erreur :

ERREUR: le nom de la table « ingredient » est spécifié plus d'une fois


********** Erreur **********

ERREUR: le nom de la table « ingredient » est spécifié plus d'une fois
État SQL :42712
nats76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 10h44   #4
pc75
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 3 092
Détails du profil
Informations personnelles :
Âge : 57
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 3 092
Points : 3 284
Points : 3 284
Bonjour,

Et comme ça ?

Code :
1
2
3
4
5
 
UPDATE ingredient 
INNER JOIN fournisseur ON ingredient.idfour = fournisseur.idfour
SET stock = stock + 5  
WHERE fournisseur.ville = 'Le Havre';
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
Pas de questions techniques en MP.
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/12/2012, 12h36   #5
al1_24
Modérateur
 
Avatar de al1_24
 
Homme Alain
Ingénieur d'études décisionnel
Inscription : mai 2002
Messages : 4 876
Détails du profil
Informations personnelles :
Nom : Homme Alain
Âge : 52
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études décisionnel
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 4 876
Points : 11 750
Points : 11 750
Et pourquoi pas tout simplement comme ça :
Code :
1
2
3
4
5
6
7
8
9
UPDATE  ingredient 
SET     stock = stock + 5
WHERE   EXISTS
        (   SELECT  NULL
            FROM    fournisseur 
            WHERE   ingredient.idfour = fournisseur.idfour
                AND fournisseur.ville = 'Le Havre';
        )
;
L'UPDATE sur une jointure n'a d'intérêt que si les données de la table jointe sont utilisées pour la mise à jour, pas uniquement pour la sélection comme dans ta demande.
__________________
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton et pensez aux balises
[code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 15/12/2012, 11h22   #6
nats76
Invité de passage
 
Homme Stanislas Latron
Étudiant
Inscription : octobre 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Stanislas Latron
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2012
Messages : 4
Points : 2
Points : 2
Ca fonctionne ! Merci beaucoup
nats76 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 18h55.


 
 
 
 
Partenaires

Hébergement Web