4.6.2.3. Quelle est la plus grande municipalité (aire) de la province ?

Cette requête utilise une mesure spatiale comme condition. Il y a plusieurs manières d'approcher ce problème, mais la plus efficace est la suivante :

postgis=# SELECT name, area(the_geom)/10000 AS hectares
          FROM bc_municipalite
          ORDER BY hectares DESC LIMIT 1;
     name      |    hectares
---------------+-----------------
TUMBLER RIDGE  | 155020.02556131
(1 row)

Vous remarquerez que pour répondre à cette question nous devons calculer l'aire de tous les polygones. Si nous faisons souvent cela, il serait judicieux d'ajouter une colonne "aire" à la table que nous pourrions alors indexer pour plus de performance. En ordonnant le résultat par ordre décroissant, et en utilisant la commende LIMIT de PostgreSQL nous pouvons aisément récupérer la plus grande valeur sans avoir à utiliser de fonction d'agrégation comme max().

Posted in version imprimable | Vous devez vous connecter ou vous enregistrer pour écrire des commentaires | 3070 lectures

Posté par yjacolin le 6 Avril, 2006 - 20:40.

Accéder aux archives

« Novembre 2024  
Lun Mar Mer Jeu Ven Sam Dim
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Ouverture de session

Qui est en ligne

Il y a actuellement 1 utilisateur et 37 invités en ligne.
Locations of visitors to this page
Drupal Top Sites - Ultimate Drupal Exposure