PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 30/08/2011 14:10:08

charleydc5
Membre

DELETE FROM avec JOIN

Bonjour à tous,

Je n'arrive pas à faire une suppression qui comporte un ou plusieurs "JOIN" à l'intérieur.

Voici mon code:

DELETE FROM stirq.sortiedescription

INNER JOIN stirq.sortie ON
stirq.sortiedescription.intsortieid = stirq.sortie.intsortieid

WHERE stirq.sortie.intuserid IS NULL;

Quelqu'un a une idée?

Merci et bonne journée!


Charles Morin
PostgreSQL 9.0.3 sur Windows 2008 Server Standard (x64)

Hors ligne

#2 30/08/2011 14:32:10

charleydc5
Membre

Re : DELETE FROM avec JOIN

Bonjour,

L'instruction suivante a fait le travail :

DELETE FROM stirq.sortiedescription
USING stirq.sortie
WHERE stirq.sortiedescription.intsortieid = stirq.sortie.intsortieid AND
stirq.sortie.intuserid IS NULL;

Est-ce la façon standard de faire?

Merci


Charles Morin
PostgreSQL 9.0.3 sur Windows 2008 Server Standard (x64)

Hors ligne

#3 30/08/2011 19:06:49

gleu
Administrateur

Re : DELETE FROM avec JOIN

Comme l'indique la documentation (http://docs.postgresql.fr/9.0/sql-delete.html), DELETE n'accepte pas les JOIN. Par contre, il permet l'utilisation de la clause USING comme vous l'avez indiqué ci-dessus.


Guillaume.

Hors ligne

Pied de page des forums