Trouver un l'indicatif le plus proche en SQL - SQL/NoSQL - Programmation
Marsh Posté le 31-08-2009 à 09:50:51
Sans + d'infos, je dirais que connaissant dans ta base le nb de caractères du plus long indicatif, tu vas de voir lancer n requêtes en base.
Ex : si ton plus long indicatif est de 5 caractères et que ton input est 0123785412, alors tu vas lancer une 1ère requête avec les 5 premiers caractères de ton input et si pas de résultat, ben avec les 4 premiers... jusqu'à ce que tu trouves l'indicatif.
Marsh Posté le 31-08-2009 à 10:11:56
un truc dans le genre, et la en fonction de ton sgbd et de ta manière d'interfacer les données tu choppes le premier record ou si tu as accès a des fonctions avancées tu les utilises.
Code :
|
Marsh Posté le 31-08-2009 à 14:21:24
merci de votre aide je pense que la solution de casimimir est nickel
Marsh Posté le 01-09-2009 à 10:19:51
Plutôt que d'utiliser SUBSTR, j'utiliserais "param_le_numero LIKE concat(i.indicatif, '%')" dans la requête de casimimir. Ca peut éventuellement améliorer légèrement les perfs.
Autre point, dans la table des indicatifs, stocker le length() de l'indicatif, histoire de ne pas avoir à le recalculer à la volée.
Marsh Posté le 31-08-2009 à 09:05:49
Bonjour ,
J'ai un problème assez simple
Une table indicatifs contenant des données de ce type:
01
012
01234
0245
06
061
.....
j'aimerais construire une requête qui me donne pour un input donne , l'indicatif qui lui correspond (le plus proche)
par exemple , avec les données de ma table si mon input est 0123785412 je recois 012, si par contre l'input est 01234785214 je recois 01234
merci de votre aide
---------------
un blog sur Asterisk