L’utilisation des « WITH » + « UPDATE » pour des versions de Postgres antérieures à la 9.1

La méthode dite « Common Table Expressions » ou CTE est extrêmement utile en SQL puisqu’elle permet non seulement d’utiliser la récursivité (càd d’utiliser la même sous requête plusieurs fois dans la requête), mais aussi de simplifier l’écriture des sous-requêtes.

En voici un exemple  :
WITH nomdelavue1 as (sous_requête1),
nomdelavue2 as (sous_requête2)
UPDATE requêteA;

Cette méthode n’est cependant utilisable avec les UPDATES de Postgres qu’à partir de la version 9.1. Il est heureusement possible d’obtenir un résultat similaire à l’aide des « VIEWS »pour les versions antérieures :

CREATE VIEW nomdelavue as (requete);
CREATE VIEW nomdelavue2 as (requete);
UPDATE requêteA ;
DROP VIEW nomdelavue2;
DROP VIEW nomdelavue;

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>