Retour du nombre le plus proche ...

cs_kalif Messages postés 362 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 24 août 2012 - 19 mars 2011 à 10:40
007Julien Messages postés 276 Date d'inscription mercredi 22 septembre 2010 Statut Membre Dernière intervention 8 janvier 2014 - 20 mars 2011 à 10:07
bonjour a tous,

Voila je cherche le moyen de trouver dans une base SQL le nombre le plus proche d'une valeur...

Voici ma table:
ID/nombre
1/40
2/50
3/60
4/70
5/80

Et je cherche a faire quelque chose dans ce genre:
SELECT * FROM tbl WHERE nombre EST_PLUS_PROCHE_DE 63

SQL doit me renvoyer la ligne 3....


Merci pour votre aide ;)

3 réponses

007Julien Messages postés 276 Date d'inscription mercredi 22 septembre 2010 Statut Membre Dernière intervention 8 janvier 2014 4
20 mars 2011 à 10:07
C'est pourtant simple :
SELECT * FROM `tbl` ORDER BY ABS(nombre-63) LIMIT 1

Bien entendu, le 63 de l'exemple peut être remplacé par la valeur à approcher. Il convient encore que nombre ne soit pas unsigned (ce qui fausserait le classement).
2
007Julien Messages postés 276 Date d'inscription mercredi 22 septembre 2010 Statut Membre Dernière intervention 8 janvier 2014 4
19 mars 2011 à 12:25
Faire un ORDER BY portant sur la valeur absolue des différences valeur-nombre ?
0
cs_kalif Messages postés 362 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 24 août 2012
19 mars 2011 à 15:49
je ne vois pas trop ce que tu veux dire, peux tu me donner un exemple ?
0
Rejoignez-nous