À propos de ce tutoriel
Dans ce chapitre nous allons parler des types spatiaux qui permettent de gérer des éléments géométriques. Ce type est assez spécifique et vous ne serez pas forcément amené à l'utiliser très souvent. Malgré tout cela peut répondre à des problématiques précises comme la sauvegarde de position géographique.
ALTER TABLE posts
ADD location POINT;
On peut ensuite utiliser ce champs pour sauvegarder les latitude et longitude de nos points
INSERT INTO posts (title, location) VALUES
('Poitiers', ST_GeomFromText('POINT(0.340196 46.580260)')),
('Montpellier', ST_GeomFromText('POINT(3.876734 43.611242)'));
Cela permet ensuite de récupérer la distance entre plusieurs points
SELECT title FROM posts WHERE ST_Distance_Sphere(
location,
(SELECT location FROM posts WHERE title = "Montpellier")
) < 200000;