Comment stocker de longitude & latitude comme une géographie dans sql server 2014?
Je suis un sql débutant qui sait comment obtenir ma position en coordonnées (longitude et latitude. Mon objectif est d'éventuellement être en mesure de sélectionner toutes les lignes de myTable Où la distance est à moins de 2 km. Cependant, sur mon chemin vers cet objectif, il y a certaines choses qui me confond donc je vais essayer de lister ce que je ne suis pas à comprendre.
- Comment puis-je utiliser la latitude et la longitude de l'emplacement du magasin à l'intérieur d'une géographie de la colonne?(parce que c'est censé être un seul point géographique pas deux à droite? pas une longitude et une latitude?)
- Maintenant que j'ai la géographie points, comment puis-je sélectionner toutes les lignes à l'intérieur d'une certaine distance(dans mon cas 2km)?
J'ai vu des questions similaires déjà, cependant, la quantité de pré compréhension pour les résoudre obtient au-delà de mes connaissances sql depuis que je suis un débutant absolu, cela peut être fait facilement, quelqu'un sait comment?
OriginalL'auteur Johan | 2015-05-19
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
géographie::STPointFromText
/géographie::Point
pour stocker la longitude et la latitude dans une géographie type de données.ou
Lien De Référence:
Mise à jour de la Géographie de la colonne dans le tableau
Vous pouvez utiliser
STDistance
comme ça.Lien De Référence:
La Distance entre deux points à l'aide de la Géographie type de données dans sql server 2008?
Requête D'Insertion
D'Obtenir La Distance De Requête
Ok, donc, à l'aide de cette marche, comment aurais-je insérer une façon de sélectionner toutes les lignes à l'intérieur d'une distance spécifique? J'ai essayé quelque chose de similaire à l'endroit OÙ @DistanceFromPoint > 400 mais ce n'est évidemment pas le moyen de le faire, car il me donne des erreurs, merci encore pour la réponse!
vous utilisez
WHERE location.STDistance(@DistanceFromPoint) > 400
Ok super, merci beaucoup! quand il dit à 400 par exemple, est qu'en km ou en miles?
c'est dans meters
OriginalL'auteur ughai
Plus de la Réponse ci-dessus @ughai
Ajout d'une colonne
Convertir la Longitude et la latitude de la Géographie
De trouver des Lieux dans le rayon de 2kms
il a travaillé pour moi d'obtenir des lieux, au sein de la distance
OriginalL'auteur Tajkumar
Vous pouvez convertir lat et long à un point et l'enregistrer dans le tableau.
Declare @geo Géographie,
@Lat varchar(10),
@long varchar(10)
SET @Lat = '34.738925'
SET @Long = '-92.39764'
SET @geo= géographie::Point(@LAT, @LONGTEMPS, 4326)
OriginalL'auteur Deepak Singla