Bonjour,

J'effectue actuellement une requete avec une fonction stocké pour des distances de GPS.

voici ma requete
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
SELECT m.id AS m_id, m.n_rue AS n_rue, m.rue AS rue, m.latitude AS m_latitude, m.longitude AS m_longitude, e.id AS e_id, e.nom AS e_nom, e.logo AS logo, v.code_INSEE AS code_INSEE, v.nom AS v_nom, v.cp AS cp,
get_distance_metres('48.86669921875', '2.33332991600037', m.latitude, m.longitude) AS proximite 
FROM magasin m JOIN enseigne e ON (m.id_enseigne = e.id) JOIN ville v ON (v.code_INSEE = m.code_INSEE)
WHERE v.code_INSEE != 75110 AND m.valide = 1 AND proximite < 1000
ORDER BY proximite ASC, e.nom, v.nom, m.rue LIMIT 9
Au milieu je met un allias "proximite" sur une fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
get_distance_metres('48.86669921875', '2.33332991600037', m.latitude, m.longitude) AS proximite
dans la clause ORDER je trie par cette allias et ca fonctionne.
Par contre quand je veux limiter dans le where sur cet allias :
J'ai une erreur :
Unknown column 'proximite' in 'where clause'
Par contre si j'appel la fonction dans la clause WHERE une deuxieme fois :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
get_distance_metres('48.86669921875', '2.33332991600037', m.latitude, m.longitude)<1000
La ca fonctionne.

Je fais quelque chose de mal ou c'est un bug de mysql?