À propos de ce tutoriel
MySQL permet d'utiliser des procédure stockées lorsque l'on souhaite sauvegarder une ou plusieurs séries d'opération. Ces procédures peuvent aussi prendre des paramètres (en entrée comme en sortie)
DELIMITER $
CREATE OR REPLACE PROCEDURE getClosestCity (
IN city VARCHAR(255),
OUT closestCity VARCHAR(255)
)
BEGIN
SELECT subquery.title INTO closestCity FROM (
SELECT
title,
ST_Distance_Sphere(
location,
(SELECT location FROM posts WHERE title = city)
) as distance
FROM posts
WHERE title != city
ORDER BY distance DESC
LIMIT 1
) as subquery;
END$
Delimiter;
On peut ensuite utiliser cette procédures
CALL getClosestCity('Montpellier', @city);
SELECT @city;
Si vous voulez recherche une procédure vous pouvez utiliser
SHOW PROCEDURE STATUS LIKE 'getClosestCity';