Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment donner un sens au type de données de géographie SQL Server

Le type de données SQL Server Geography est différent des autres types simplement parce que vous ne l'utilisez pas souvent. Ce n'est pas comme varchar , entier , flottant , ou DateHeure présent dans chaque table, au moins dans un type.

Avons-nous besoin du type de données SQL Server Geography ? Pour donner un sens à quelque chose de nouveau, nous devons répondre à trois questions fondamentales :

Quels problèmes résout-il ? ? La réponse réside dans les cas d'utilisation.
Quelles sont les choses impliquées dans son étude ? Vous apprendrez quelques définitions et acronymes de base. Je n'ai rassemblé que les choses importantes, donc ça ne vous ennuiera pas.
Existe-t-il des exemples pour expliquer davantage comment cela fonctionne et est-ce facile à mettre en œuvre ? Notre espèce vit avec le code. On mange et on dort avec. Nous allons donc avoir des exemples de codes dans cet article.

Ce n'est pas un article pour vous bourrer de jargon technique et de syntaxe tels quels. Vous êtes prêt à partir une fois que vous avez découvert les bases du type de données géographiques SQL Server. Ça sonne bien ?

Plongeons-y.

Cas d'utilisation des données spatiales

Commençons par la plus évidente et la plus importante :le terme général "données spatiales".

Les données spatiales ou géospatiales sont les données sur les objets, les événements ou les phénomènes situés à la surface de la Terre. En d'autres termes, il s'agit d'informations farcies sur une carte. Pensez à Google Maps ou Waze, par exemple.

Mais il y a plus :

  • Localiser un camion de livraison d'entreprise via un site Web ou une application mobile
  • Recherchez des points d'intérêt comme des restaurants, des banques ou des hôpitaux à proximité.
  • Analyser les données sur les tremblements de terre, la propagation du COVID-19, les inondations ou le trafic routier – analyse géospatiale

Et ainsi de suite.

Plusieurs plates-formes de bases de données traitent des données spatiales, mais nous nous concentrerons sur une seule.

Qu'est-ce que le type de données géographiques SQL Server ?

Microsoft a ajouté des types de données géographiques et géométriques dans SQL Server 2008. La géographie représente les données dans un système de coordonnées terrestre rond. Il est également implémenté en tant que type de données .Net CLR, qui possède des propriétés telles que la latitude ou la longitude.

Cet article se concentre sur le type de données géographiques et ses applications, en particulier dans :

  • Points d'intérêt, comme la localisation des restaurants à proximité et un exemple de requête.
  • Analyse géospatiale.

Puisqu'il s'agit d'un type de données, nous créons une table. Ensuite, nous définissons une colonne ou des colonnes comme géographie. Et enfin, nous créons un index spatial sur ces colonnes.

Lorsque vous interrogez une table avec une colonne géographique, la sortie sera en binaire.

Essayons d'exécuter un exemple élémentaire ci-dessous :

SELECT 
 [CityID]
,[CityName]
,[GeoLocation]
FROM [Cities]

La figure 1 ci-dessous montre l'ensemble de résultats :

Lorsqu'un ensemble de résultats inclut des données spatiales, un Résultats spatiaux onglet apparaîtra également. La figure 2 illustre les résultats spatiaux de la requête ci-dessus :

Maintenant, que vient-il de se passer ?

Il semble que la visualisation de l'ensemble de résultats soit loin d'être facile et utile, sans parler des points le long des lignes de la grille. Je vous ai montré à quoi vous attendre dès le premier SELECT déclaration sur les types de données géographiques. La prochaine section dévoilera une bien meilleure perspective.

Création d'instances géographiques SQL Server

Vous avez besoin d'une instance pour opérer sur des données avec le type de données géographique SQL Server. Il existe quatre façons de créer une instance géographique :

  1. à partir d'une autre instance géographique
  2. en utilisant un texte bien connu (WKT)
  3. en utilisant un binaire bien connu (WKB)
  4. à partir d'une saisie de texte GML (Geography Markup Language)

Concentrons-nous sur l'utilisation d'un texte bien connu.

Utilisation d'un texte bien connu (WKT)

Cette représentation repose sur l'Open Geospatial Consortium (OGC). Il permet l'échange de données géographiques sous forme textuelle.

Reprenons notre exemple précédent, mais au lieu d'une sortie binaire, nous la convertirons en chaîne :

SELECT 
 [CityID]
,[CityName]
,[GeoLocation].ToString() AS GeoLocationString
FROM [Cities]

Remarquez le ToString () méthode. Il convertira la sortie en valeur de chaîne. Vous pouvez voir la sortie dans la figure 3 ci-dessous :

Mieux? Eh bien, ce ne sont encore que des chiffres. Mais que se passe-t-il si je vous dis que ces chiffres sont la latitude et la longitude de ces villes ? C'est plus logique, non ?

C'est un texte bien connu (WKT), et il est essentiel lorsque vous mettez les données dans la colonne. Plus sur cela plus tard. Maintenant, nous avons besoin d'une autre chose à examiner.

Identifiant de référence spatiale (SRID)

Outre un texte bien connu, chaque instance géographique a un identifiant de référence spatiale (SRID). Il est nécessaire pour mesurer des instances géographiques (lieux ou points) dans une cartographie terrestre ronde.

L'unité de mesure la plus répandue est le mètre ou le mètre carré, désigné par le SRID 4326. Tous les autres SRID peuvent être trouvés dans sys.spatial_reference_systems .

Vos colonnes géographiques peuvent avoir différents SRID. Notez que lorsque vous effectuez des opérations sur deux instances géographiques, comme mesurer leurs distances. Les deux instances doivent avoir le même SRID, sinon elles vous renverront NULL .

STGeomFromText

Après avoir découvert WKT et SRID, la création d'une instance géographique nécessite une méthode appelée STGeomFromText . Il a la syntaxe suivante :

géographie ::STGeomFromText( , SRID )

Exemple :

INSERT INTO Cities
(CityName, GeoLocation)
VALUES
('CITY OF MANILA',geography::STGeomFromText('POINT(14.6077 120.98202)', 4326))

Vérifions les valeurs des paramètres :

‘POINT(14.6077 120.98202)’ – un texte bien connu d'un point de la carte avec la latitude de 14,6077 et la longitude de 120,98202. Cela correspond à Manille, la capitale des Philippines.

4326 – l'identifiant de référence spatiale

Passons directement aux exemples et utilisons ce nouveau joyau que nous avons trouvé.

Exemples pratiques de type de données géographiques SQL Server

Nous allons avoir deux applications communes pour vous permettre d'être opérationnel avec les données géographiques.

Calcul des distances (Voisin le plus proche)

Une application courante dans les données spatiales géographiques est appelée la requête du voisin le plus proche. Dans cette requête, vous souhaitez connaître la distance ou la proximité d'un objet par rapport à un autre objet ou lieu.

Dans mon article sur le graphe SQL, j'ai décrit comment un client pouvait trouver les restaurants à proximité à partir de l'emplacement actuel. Reprenons à nouveau cet exemple :

-- Query the location of the customer
DECLARE @deliveryLocation GEOGRAPHY

SELECT @deliveryLocation = Locations.GeoLocation
FROM Customers, willReceiveIn, Locations
WHERE MATCH(Customers-(willReceiveIn)->Locations)
AND Customers.CustomerID = 3

-- Query the restaurants within 1000 meters from the location of the customer
SELECT
 Restaurants.Name
,Restaurants.Description
,Restaurants.Opening
,Restaurants.Closing
,Locations.Description
,ROUND(Locations.GeoLocation.STDistance(@deliveryLocation),2) AS Distance
FROM Restaurants, isLocated, Locations
WHERE MATCH(Restaurants-(isLocated)->Locations)
AND locations.GeoLocation.STDistance(@deliveryLocation) <= 1000
ORDER BY Distance

Le secret de cette requête de voisin le plus proche est STDistance (). Il a besoin de deux emplacements géographiques :celui pour le client et un autre pour les restaurants situés à moins de 1 000 mètres de l'emplacement du client.

Ce qui est cool, c'est que le même concept s'applique à d'autres idées impliquant deux emplacements ou plus.

Analyse géospatiale à l'aide de Power BI

Une autre application des données spatiales est de les utiliser pour l'analyse géospatiale. Dans cette section, nous avons un exemple utilisant des cas COVID-19 par emplacement et le présentant à l'aide de Power BI.

(En passant, voici plus d'informations sur ce qu'est Power BI et comment l'installer)

L'installation de Power BI Desktop est gratuite. L'une des visualisations par défaut est la visualisation Carte utilisant Bing Maps. Nous n'avons pas besoin de coordonnées pour les emplacements connus comme les pays et les États américains. Voir ceci dans l'exemple ci-dessous :

Notez la case rouge sur la figure 4. La latitude et la longitude sont laissées vides, mais les bulles sont bien tracées sur la carte.

Cependant, dans l'exemple suivant, nous utiliserons des régions et des villes aux Philippines. Les coordonnées sont indispensables pour tracer correctement les bulles.

CE DONT VOUS AVEZ BESOIN

Avant d'aborder la partie charnue du rapport, voici les éléments de base dont nous avons besoin :

  • Bureau Power BI
  • Visualisation de la carte
  • Tableaux et requêtes
  • Exemples de données

PRÉPARATION DES DONNÉES

Préparer les tableaux et les vues

Au début, nous devons configurer les conteneurs pour nos données. Nous avons donc besoin des tables suivantes :

  1. Villes – une liste des villes des Philippines classées par région.
  2. Régions – une liste de régions aux Philippines
  3. CityCas – une liste contenant le nombre de cas pour chaque ville.

Ci-dessous la structure du tableau :

CREATE TABLE [dbo].[Cities](
[CityID] [int] IDENTITY(1,1) NOT NULL,
[CityName] [varchar](50) NOT NULL,
[RegionID] [int] NOT NULL,
[GeoLocation] [geography] NULL,
 CONSTRAINT [PK_Cities] PRIMARY KEY CLUSTERED
(
[CityID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

CREATE TABLE [dbo].[Regions](
[RegionID] [int] IDENTITY(1,1) NOT NULL,
[Region] [varchar](50) NOT NULL,
[GeoLocation] [geography] NULL,
 CONSTRAINT [PK_Regions] PRIMARY KEY CLUSTERED
(
[RegionID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

CREATE TABLE [dbo].[CityCases](
[CityCaseID] [int] IDENTITY(1,1) NOT NULL,
[CityID] [int] NOT NULL,
[DateReported] [date] NOT NULL,
[TotalCases] [int] NOT NULL,
[TotalDeaths] [int] NOT NULL,
 CONSTRAINT [PK_CityCases] PRIMARY KEY CLUSTERED
(
[CityCaseID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[CityCases]  WITH CHECK ADD  CONSTRAINT [FK_CityCases_Cities] FOREIGN KEY([CityID])
REFERENCES [dbo].[Cities] ([CityID])
GO
ALTER TABLE [dbo].[CityCases] CHECK CONSTRAINT [FK_CityCases_Cities]
GO

Étant donné que le type de données géographique est inconnu de la visualisation Power BI Map, vous devez créer des vues. Le but est d'exposer la latitude et la longitude de ces colonnes. Nous le faisons pour les villes et les régions - voir ci-dessous :

CREATE VIEW vwCityCoordinates
AS
SELECT
 CityID
,CityName
,GeoLocation.Lat AS Latitude
,Geolocation.Long AS Longitude
,RegionID
FROM Cities

CREATE VIEW vwRegionCoordinates
AS
SELECT
 RegionID
,Region
,GeoLocation.Lat AS Latitude
,GeoLocation.Long AS Longitude
FROM Regions

C'est ça. Latitude et Long sont des propriétés de latitude et de longitude. Il est désormais possible de les utiliser dans notre rapport Power BI.

Construire les données

Ensuite, vous devez créer les données pour nos trois tables.

Un grand merci au ministère de la Santé des Philippines pour avoir mis l'ensemble de données à la disposition du public. Le fichier est au format CSV. La convention de dénomination des fichiers est DOH COVID Data Drop_ aaaammjj – 04 Case Information.CSV.

Voici comment obtenir le fichier pour mieux vous familiariser avec notre exemple :

  1. Cliquez sur le lien vers l'ensemble de données.
  2. Sélectionnez un dossier de mois. Août 2020 est dans DOH COVID Data (08).
  3. Sélectionnez une date. Le 12 août 2020, par exemple, se trouve dans DOH COVID Data Drop_20200812.
  4. Télécharger DOH COVID Data Drop_ 20200812 – 04 Case Information.CSV. Répétez les étapes 2 à 4 pour obtenir le rapport des autres jours.

De plus, vous devez importer ces données dans SQL Server. Voici comment procéder :

  1. Ouvrez le fichier CSV dans Excel.
  2. Ajouter une colonne DateReported et remplissez tous les enregistrements avec la date correspondante. Dans ce cas, 08/10/2020.
  3. Enregistrez-le en tant que fichier Excel (.xlsx).
  4. Exportez le fichier Excel vers SQL Server dans une table appelée covid_ph .

Maintenant que les données sont prêtes dans SQL Server, la tâche suivante consiste à exécuter ce qui suit dans l'éditeur de requête SSMS :

INSERT INTO CityCases
(CityID, DateReported, TotalCases, TotalDeaths)
SELECT DISTINCT
 c.CityID
,cp.DateReported
,(SELECT COUNT(*) FROM covid_ph cp1 WHERE cp1.CityMunRes = cp.CityMunRes AND                 
                               cp1.DateReported = cp.DateReported) AS TotalCases
,(SELECT COUNT(*) FROM covid_ph cp1 WHERE cp1.CityMunRes = cp.CityMunRes AND 
                               cp1.DateReported = cp.DateReported AND 
                               cp1.RemovalType='DIED') AS TotalDeaths
FROM covid_ph cp
INNER JOIN Cities c ON cp.CityMunRes = c.CityName
ORDER BY cp.DateReported

Pendant ce temps, il n'y a pas de coordonnées dans l'ensemble de données que nous avons utilisé. J'ai donc ajouté manuellement la latitude et la longitude des régions et des villes de latlongdata.com.

Voici les données pour les régions :

INSERT INTO Regions
(Region, GeoLocation)
VALUES
('BARMM',geography::STGeomFromText('POINT(121.987 6.42964)', 4326)),
('CAR',geography::STGeomFromText('POINT(121.466 17.4737)', 4326)),
('CARAGA',geography::STGeomFromText('POINT(125.492 9.78604)', 4326)),
('NCR',geography::STGeomFromText('POINT(120.984 14.5995)', 4326)),
('Region I: Ilocos Region',geography::STGeomFromText('POINT(120.381 17.5553)', 4326)),
('Region II: Cagayan Valley',geography::STGeomFromText('POINT(121.811 16.9754)', 4326)),
('Region III: Central Luzon',geography::STGeomFromText('POINT(120.712 15.4828)', 4326)),
('Region IV-A: CALABARZON',geography::STGeomFromText('POINT(121.079 14.1008)', 4326)),
('Region IV-B: MIMAROPA',geography::STGeomFromText('POINT(118.736 9.84321)', 4326)),
('Region IX: Zamboanga Peninsula',geography::STGeomFromText('POINT(123.259 8.15408)', 4326)),
('Region V: Bicol Region',geography::STGeomFromText('POINT(123.414 13.421)', 4326)),
('Region VI: Western Visayas',geography::STGeomFromText('POINT(122.537 11.005)', 4326)),
('Region VII: Central Visayas',geography::STGeomFromText('POINT(124.064 9.81687)', 4326)),
('Region VIII: Eastern Visayas',geography::STGeomFromText('POINT(125.039 12.2446)', 4326)),
('Region X: Northern Mindanao',geography::STGeomFromText('POINT(124.686 8.02016)', 4326)),
('Region XI: Davao Region',geography::STGeomFromText('POINT(126.089 7.30416)', 4326)),
('Region XII: SOCCSKSARGEN',geography::STGeomFromText('POINT(124.686 6.27069)', 4326))

Voici les données d'une liste partielle de villes pour Villes tableau :

INSERT INTO Cities
(CityName, RegionID, GeoLocation)
VALUES
('CALOOCAN CITY',4,geography::STGeomFromText('POINT(120.967 14.6488)', 4326)),
('CITY OF LAS PIÑAS',4,geography::STGeomFromText('POINT(120.999 14.4325)', 4326)),
('CITY OF MAKATI',4,geography::STGeomFromText('POINT(121.033 14.5502)', 4326)),
('CITY OF MALABON',4,geography::STGeomFromText('POINT(120.957 14.6633)', 4326)),
('CITY OF MANDALUYONG',4,geography::STGeomFromText('POINT(121.039 14.5771)', 4326)),
('CITY OF MANILA',4,geography::STGeomFromText('POINT(120.982 14.6077)', 4326)),
('CITY OF MARIKINA',4,geography::STGeomFromText('POINT(121.097 14.6409)', 4326)),
('CITY OF MUNTINLUPA',4,geography::STGeomFromText('POINT(121.05 14.4209)', 4326)),
('CITY OF NAVOTAS',4,geography::STGeomFromText('POINT(120.933 14.6775)', 4326)),
('CITY OF PARAÑAQUE',4,geography::STGeomFromText('POINT(121.017 14.4664)', 4326)),
('CITY OF PASIG',4,geography::STGeomFromText('POINT(121.061 14.5876)', 4326)),
('CITY OF SAN JUAN',4,geography::STGeomFromText('POINT(121.037 14.6001)', 4326)),
('CITY OF VALENZUELA',4,geography::STGeomFromText('POINT(120.967 14.6823)', 4326)),
('PASAY CITY',4,geography::STGeomFromText('POINT(121 14.5505)', 4326)),
('PATEROS',4,geography::STGeomFromText('POINT(121.071 14.5487)', 4326)),
('QUEZON CITY',4,geography::STGeomFromText('POINT(121.033 14.633)', 4326)),
('TAGUIG CITY',4,geography::STGeomFromText('POINT(121.062 14.5216)', 4326)),
('ALFONSO',8,geography::STGeomFromText('POINT(120.861 14.1214)', 4326)),
('AMADEO',8,geography::STGeomFromText('POINT(120.922 14.1693)', 4326)),
('BACOOR CITY',8,geography::STGeomFromText('POINT(120.974 14.413)', 4326)),
('CARMONA',8,geography::STGeomFromText('POINT(121.041 14.3108)', 4326)),
('CAVITE CITY',8,geography::STGeomFromText('POINT(120.897 14.4791)', 4326)),
('CITY OF DASMARIÑAS',8,geography::STGeomFromText('POINT(120.959 14.299)', 4326)),
('CITY OF GENERAL TRIAS',8,geography::STGeomFromText('POINT(120.907 14.3214)', 4326)),
('GEN. MARIANO ALVAREZ',8,geography::STGeomFromText('POINT(121.013 14.3051)', 4326)),
('GENERAL EMILIO AGUINALDO',8,geography::STGeomFromText('POINT(120.792 14.1931)', 4326)),
('IMUS CITY',8,geography::STGeomFromText('POINT(120.941 14.4064)', 4326)),
('INDANG',8,geography::STGeomFromText('POINT(120.873 14.192)', 4326)),
('KAWIT',8,geography::STGeomFromText('POINT(120.904 14.441)', 4326)),
('MAGALLANES',8,geography::STGeomFromText('POINT(120.746 14.1583)', 4326)),
('MARAGONDON',8,geography::STGeomFromText('POINT(120.735 14.253)', 4326)),
('MENDEZ (MENDEZ-NUÑEZ)',8,geography::STGeomFromText('POINT(120.902 14.1312)', 4326)),
('NAIC',8,geography::STGeomFromText('POINT(120.792 14.2965)', 4326)),
('NOVELETA',8,geography::STGeomFromText('POINT(120.88 14.4279)', 4326)),
('ROSARIO',8,geography::STGeomFromText('POINT(120.857 14.414)', 4326)),
('SILANG',8,geography::STGeomFromText('POINT(120.969 14.2142)', 4326)),
('TAGAYTAY CITY',8,geography::STGeomFromText('POINT(120.962 14.1153)', 4326)),
('TANZA',8,geography::STGeomFromText('POINT(120.85 14.3429)', 4326)),
('TERNATE',8,geography::STGeomFromText('POINT(120.678 14.2714)', 4326)),
('TRECE MARTIRES CITY (CAPITAL)',8,geography::STGeomFromText('POINT(120.868 14.2822)', 4326))

Maintenant que les données sont toutes définies, nous sommes prêts à préparer le rapport.

PRÉPARATION DU RAPPORT

Avant de commencer, nous avons besoin de deux pages de rapports. Une page est pour les données par région, et l'autre page est par ville.

Rapport COVID-19 par région

Voici quelques étapes simples pour créer le rapport par région :

  1. Se connecter à SQL Server à partir de Power BI. Indiquez le serveur et la base de données.
  2. Choisissez les tableaux et les vues dont vous avez besoin pour le rapport.

3. Définissez les relations – voir Figure 6 ci-dessous. Pour plus de détails sur la définition des relations dans Power BI, visitez cette page.

4. Cliquez sur la visualisation Carte et renseignez les propriétés. Liez les propriétés de latitude et de longitude à partir de vwRegionCoordinates . Ensuite, l'info-bulle de vwRegionCoordinates Région colonne. Et enfin, la taille de CityCases ' TotalCas colonne. Voir la figure 7 ci-dessous :

  1. Ajoutez un Slicer et liez-le à DateReported de CityCases tableau.
  2. Insérez une carte et liez-la à TotalCases de CityCases tableau
  3. Ajouter un graphique à barres groupées. Liez la propriété Axis à Région colonne de vwRegionCoordinates . Ensuite, liez les valeurs à TotalCases colonne de CityCases . Voir la figure 8 ci-dessous :

Après les étapes ci-dessus, vous verrez le look final. Il devrait ressembler à la figure 9 ci-dessous :

Rapport COVID-19 par ville

La première page est prête. Ajouter la page suivante pour le rapport par ville ne devrait pas être difficile.

Voici les étapes :

  1. Ajoutez une nouvelle page en cliquant sur le + dans la partie inférieure de la fenêtre et renommez-la Par ville (Philippines).
  2. Incluez un segment et liez-le à la région à partir de vwRegionCoordinates .
  3. Insérez un autre segment et liez-le à DateReported de CityCases .
  4. Ajoutez une carte et liez-la à TotalCases de CityCases .
  5. Insérez une visualisation de carte. Vous définissez les propriétés de latitude et de longitude à partir de vwCityCoordinates . L'info-bulle provient de vwCityCoordinates NomVille colonne, et la taille provient de CityCases ' TotalCas colonne.
  6. Ajouter un graphique à barres groupées et lier l'axe à CityName colonne de vwCityCoordinates et les valeurs à TotalCases de CityCases .

L'aspect final du rapport par ville devrait ressembler à la figure 10 ci-dessous :

Quel est l'intérêt d'utiliser des cartes à des fins d'analyse par rapport à des graphiques à barres ou à courbes ?

Tout d'abord, ce n'est pas seulement pour l'esthétique et impressionner votre public avec des rapports accrocheurs. Plus important encore, cela leur donne une meilleure compréhension des données relatives à un emplacement.

Dans notre exemple, vous pouvez voir où le problème de la pandémie est le plus répandu en fonction de la taille des bulles. De plus, on peut voir et comparer en un coup d'œil le nombre de cas de lieux différents les uns par rapport aux autres. Cela aidera également les responsables gouvernementaux à prendre de meilleures décisions.

Notre exemple de rapport est trop simple, mais il montre comment les types de données géographiques SQL Server peuvent vous aider dans l'analyse géospatiale.

Conclusion

Avez-vous compris ce que cela vous rapporte lorsque vous utilisez le type de données géographiques géographique ?

  • Les données spatiales ou géospatiales désignent les données relatives à des points situés à la surface de la Terre.
  • Il peut être utilisé pour la requête "plus proche voisin" recherchant les cinémas, restaurants, clubs, etc. à proximité.
  • Il est également pratique pour l'analyse de données géospatiales, comme le rapport que nous avons créé dans Power BI.
  • Les éléments fondamentaux de la création d'une instance géographique sont des éléments tels que le texte connu (WKT), l'identificateur de référence spatiale (SRID) et la méthode STGeomFromText .

Dans cet article, nous n'avons abordé qu'une partie de ce que les données spatiales dans SQL Server peuvent faire pour vous. Vous ne les utiliserez peut-être pas tous en même temps, mais les cas d'utilisation les plus courants sont là pour vous aider à démarrer. Pourquoi ne pas en savoir plus sur les références de Microsoft ci-dessous ?

  • Présentation des données spatiales
  • Types de données spatiales
  • Indexation des données spatiales

Si vous aimez cet article, partagez-le avec vos plateformes de médias sociaux préférées.