|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juillet 2004 Messages : 37 ![]() |
Bonjour,
Dans un champ text j'ai des valeurs de ce type: 50-7865 10-985 25-789 etc... Mon problème c'est que j'ai besoin de sortir les références qui ont moins de 40 avant le premier tiret... Est-ce réalisable? Si oui, avez vous des pistes à me proposer? Merci. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 661 ![]() |
Bonjour,
on peut se demander si vous avez bien modélisé vos références (il aurai peut-être été util de spliter votre références en différent lots). Sinon pour la demande, vous pouvez utilisez le substr ou left pour ne prendre qu'une partie d'une string. http://dev.mysql.com/doc/refman/5.5/...functions.html |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juillet 2004 Messages : 37 ![]() |
En effet, c'est quelque chose que je n'avais pas prévu...
D'après toi il faut mieux passer sur 2 champs entier? J'ai trouvé juste avant ton post : SUBSTRING(champ, 1, INSTR(champ,'-'))<40 Merci pour ton aide |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 661 ![]() |
Ca seul vous pourrez y répondre.
Le problème étant de voir si vos références peuvent changer de format dans le temps ou non. Maintenant si elles sont systématique du type XX-YYYYYYY-DDD-CCC ou que sais-je, cela peut être intéressant d'envisager une autre structure pour faciliter les recherches. les problèmes commenceront à ce faire sentir quand vous aurez beaucoup de références, passer par des table scan systématiquement peut être assez délicat pour les perfs. (et je ne parlerai pas pas de l'utilisation d'un substr ou like qui ne sont pas terrible) Une autre approche d'ailleurs à votre problème (qui serai peut-etre meilleur) serai d'utiliser : like '40-%' au lieu du substr Logiquement si votre référence est indexée, celui-ci pourra peut-être utilisé. |
|
|
10
|
|
|
#5 | |
|
Invité régulier
![]() Inscription : juillet 2004 Messages : 37 ![]() |
Citation:
Oui mais dans ce cas je ne peux pas avoir les références en dessous de 40 :/ |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com