12
votes

Union toute géométrie dans une table SQL Server comme Geomunion à Postgres

Juste pour clarifier le haut: je parle de la géométrie de l'Unioning, pas du mot-clé SQL Union .

J'essaie de déplacer certaines données spatiales de Postgres avec Postgis sur SQL Server 2008. Ça allait bien jusqu'à ce que j'ai vu une déclaration comme celle-ci: xxx

cette géométrie dans cette colonne et le renvoie comme un résultat (similaire à la manière dont comptent < / code> travaux). Aussi loin que je sache, SQL Server possède uniquement la fonction stupor) , quels syndicats une géométrie avec une autre. Y a-t-il un moyen de faire quelque chose de similaire à la voie des postgres?

Si cela aide, la fonction superficielle xxx


1 commentaires

Disclaimer: Je n'ai pas travaillé avec des données spatiales :). Pouvez-vous ne pas utiliser l'expression de table commune et l'orthographe en combinaison pour obtenir la fonctionnalité de géomunion désirée?


3 Réponses :


9
votes

La façon dont j'ai fini par faire, c'est avec des variables: xxx

Ce n'est pas aussi gentil, mais ça marche.


1 commentaires

Et cela devient vraiment cher pour plus d'une poignée de géométries.



5
votes

Votre meilleure option consiste à créer une fonction CLR pour prendre en charge l'agrégat. Il y a quelques solutions existantes:


1 commentaires

Vous êtes correct - c'est la meilleure option pour SQL 2008, mais c'est très lent et provoque des erreurs de petites géométries. Heureusement, SQL2012 est un éclair rapide et n'a pas de problèmes de géométrie. Les États membres ont déclaré qu'ils ne vont pas résoudre les problèmes de géométrie dans SQL2008.



11
votes

est la fonction de syndicalisation SQL2012 uniquement? XXX

HMM suppose donc. http://technet.microsoft.com/en-us/library/ff929095.aspx < / p>


2 commentaires

Merci pour l'info. Sauvé beaucoup de temps! FYI: Pour les données de géométrie, il s'agit de géométrie :: Unionagregistrate (géométrie).


C'est absolument la réponse à la question initiale, pour SQL 2012 et plus.