Skip to Content

Répondre au commentaire

En passant, je précise

En passant, je précise l'utilisation du LIMIT.

Celui ci se contente de limiter le nombre de lignes en résultat.

Si vous souhaitez empêcher que la récursion ne fasse plus d'un certain nombre de boucles, voici une astuce :

WITH RECURSIVE zoneTampon(geom, nb) AS(
 SELECT ST_BUFFER(the_geom, 100), 1 AS nb FROM ma_table
UNION ALL
 SELECT ST_BUFFER(geom, 100), nb+1 FROM zoneTampon WHERE nb + 1 <=5
)
SELECT * FROM zoneTampon;

Ici, peut importe le nombre de lignes de la table initiale et le nombre de lignes résultat, la récursion ne se fera que 5 fois

RAPPEL : vos requêtes récursives doivent être pensées pour ne pas être infinies !

Répondre

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.