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 22/08/2019 16:33:34

delete doublon dans une table

bonjour

je doit supprimer tous les doublon dans mon table et faire la requête ci_dessous

DELETE FROM theme
LEFT OUTER JOIN (
SELECT MIN(theme_id) as id, theme_lib
FROM theme
GROUP BY theme_lib
) as t1
ON table.id = t1.id
WHERE t1.id IS NULL

Mais l'erreur ci dessous est apparu

ERREUR: erreur de syntaxe sur ou près de « LEFT »
LINE 2: LEFT OUTER JOIN (

Est-ce que quel'qu'un peut m'aider

D'avance Merci
Maryse

Hors ligne

#2 22/08/2019 18:28:46

dverite
Membre

Re : delete doublon dans une table

La syntaxe DELETE avec un JOIN est typique de MySQL et n'existe pas dans PostgreSQL. Pour éliminer les lignes qui ont le même theme_lib en gardant le theme_id le plus petit, ça pourrait être écrit avec une auto-jointure comme ça dans PostgreSQL:

DELETE FROM theme t1
USING theme t2
WHERE t1.theme_lib = t2.theme_lib
AND t1.theme_id > t2.theme_id;

Hors ligne

#3 23/08/2019 09:35:28

Re : delete doublon dans une table

Merci pour pour votre reponse.
Je vais essayer ça et vous informer la suite

Hors ligne

Pied de page des forums