OVH Cloud OVH Cloud

ignorer les espaces dans un nom

15 réponses
Avatar
td__
Bonjour,

Je fais une req. qui se termine comme ceci:
...WHERE (((TableCli.Nom_Cli) Like [Nom du client] & "*"));

J'introduis donc le nom du client afin de le retrouver dans une table.

Comment ignorer les espaces éventuels dans les noms ?

Ex.: le client "vanden trucmuch", figurant comme tel dans ma table, doit
pouvoir être trouvé si j'appelle
"van den trucmuch" ou encore "vandentrucmuch"
Je voudrais que les espaces soient ignorés dans ma requête.

Comment modifier mon instruction SQL ?

Merci,

--
Thierry
Perso pages: http://users.belgacom.net/gc009083

10 réponses

1 2
Avatar
Papy Bernard
Slt,

De "td__"

J'introduis donc le nom du client afin de le retrouver dans une table.

Comment ignorer les espaces éventuels dans les noms ?

Ex.: le client "vanden trucmuch", figurant comme tel dans ma table, doit
pouvoir être trouvé si j'appelle
"van den trucmuch" ou encore "vandentrucmuch"
Je voudrais que les espaces soient ignorés dans ma requête.

Comment modifier mon instruction SQL ?


Ce n'est pas l'instruction qu'il faut que tu modifies mais de codifier tes
clients. Cela limite le temps de saisie et les erreurs de saisie.

--
A+
Papy Bernard (RTCien malgré lui)

Avatar
td__
Codifier mes clients ??? Pas pigé. Pourrais-tu élaborer stpl.
Merci,
Thierry



"Papy Bernard" a écrit dans le message de
news:
Slt,

De "td__"

J'introduis donc le nom du client afin de le retrouver dans une table.

Comment ignorer les espaces éventuels dans les noms ?

Ex.: le client "vanden trucmuch", figurant comme tel dans ma table,
doit


pouvoir être trouvé si j'appelle
"van den trucmuch" ou encore "vandentrucmuch"
Je voudrais que les espaces soient ignorés dans ma requête.

Comment modifier mon instruction SQL ?


Ce n'est pas l'instruction qu'il faut que tu modifies mais de codifier tes
clients. Cela limite le temps de saisie et les erreurs de saisie.

--
A+
Papy Bernard (RTCien malgré lui)





Avatar
Papy Bernard
Slt,

Codifier mes clients ??? Pas pigé. Pourrais-tu élaborer stpl.
Merci,
Thierry


Tu crées une table de tes clients en leur affectant un code sur 4 ou 5
digits e, plus de leurs coordonnées.
Et tu te réfères à cette table dans tes applications. C'est le principe de
base de Gestion de Base de Données.

--
A+
Papy Bernard (RTCien malgré lui)

Avatar
3stone
Salut Papy,

"Papy Bernard"
[...]
| Tu crées une table de tes clients en leur affectant un code sur 4 ou 5
| digits e, plus de leurs coordonnées.
| Et tu te réfères à cette table dans tes applications. C'est le principe de
| base de Gestion de Base de Données.


et s'il a 10.000 clients, il fait comment pour trouver les 'digits' des trente-deux Dupont ?

;-)



--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
3stone
Salut,

"td__"
| Je fais une req. qui se termine comme ceci:
| ...WHERE (((TableCli.Nom_Cli) Like [Nom du client] & "*"));
|
| J'introduis donc le nom du client afin de le retrouver dans une table.
|
| Comment ignorer les espaces éventuels dans les noms ?
|
| Ex.: le client "vanden trucmuch", figurant comme tel dans ma table, doit
| pouvoir être trouvé si j'appelle
| "van den trucmuch" ou encore "vandentrucmuch"
| Je voudrais que les espaces soient ignorés dans ma requête.
|
| Comment modifier mon instruction SQL ?


cela donne qque chose comme ceci:

Where Replace(TableCli.Nom_Cli," ","") Like Replace([Nom du client]," ","" & "*")


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
Papy Bernard
Slt,

De "3stone"

et s'il a 10.000 clients, il fait comment pour trouver les 'digits' des
trente-deux Dupont ?


Je suppose qu'il assez intelligent pour voir s'il a besoin de 6, voire 7,
digits. Comment font-ils à la Sécu par exemple.
La génération d'une application suppose de l'analyse des besoins et un peu
d'astuces. Dois-je conclure, à la lecture de ta question, que ce sont des
qualités qui te font défaut ?

--
A+
Papy Bernard (RTCien malgré lui)

Avatar
3stone
re,

"Papy Bernard"

| De "3stone"
|
| > et s'il a 10.000 clients, il fait comment pour trouver les 'digits' des
| trente-deux Dupont ?
|
| Je suppose qu'il assez intelligent pour voir s'il a besoin de 6, voire 7,
| digits. Comment font-ils à la Sécu par exemple.


A la secu, tu te pointe AVEC ton numéro, sur un carte ou autre...

si tu leurs dit que tu t'appelle Dupont, ils font comment ?



| La génération d'une application suppose de l'analyse des besoins et un peu
| d'astuces. Dois-je conclure, à la lecture de ta question, que ce sont des
| qualités qui te font défaut ?

Tu devrais aller troller ailleurs !

A moins que tu puisse répondre à l'une ou l'autre question... ou en poser ;-)
Jusqu'à présent je n'ai pas lu une seule de tes réponses qui auraient aidé,
ne fusse qu'un temps soit peu, peu un demandeur.


Il est plus simple de dire: "fait autrement"


EOD


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
Papy Bernard
Re,
De "3stone"

Tu devrais aller troller ailleurs !

A moins que tu puisse répondre à l'une ou l'autre question... ou en poser
;-)

Jusqu'à présent je n'ai pas lu une seule de tes réponses qui auraient
aidé,

ne fusse qu'un temps soit peu, peu un demandeur.


Il est plus simple de dire: "fait autrement"


Ce n'est pas parce que tu crois savoir pisser quelques lignes de codes que
ton approche relève d'une analyse convenable. Tu ne fais qu'ajouter à la
complexité.
Alors pour le troll, tu vas pisser plus loin.

--
A+
Papy Bernard (RTCien malgré lui)

Avatar
Eric
Re,

Partout où tu passes, tu laisses un goût de désagréable et parfois de
nauséabond.
Tu tiens chaque fois le même discours ( c'est pas le bon produit, c'est
pas une bonne analyse ...) et comme tu n'as jamais de réponse aux
questions posées , tu te vantes d'un savoir-faire, à démontrer pour ce
qui me concerne, d'une fausse culture...

Pour se comporter comme tel, je crois qu'un seul NG te convient :
microsoft.public.test ou, pôvre RTCien, pour t'aider à gagner du temps :
microsoft.test

...
Ce n'est pas parce que tu crois savoir pisser quelques lignes de codes que
ton approche relève d'une analyse convenable. Tu ne fais qu'ajouter à la
complexité.
Alors pour le troll, tu vas pisser plus loin.

--
A+
Papy Bernard (RTCien malgré lui)




--
A+
Eric

Avatar
jean.paulo
Bonjour. Le code suivant permet de créer un champ de recherche dans la table
indépendant
des espaces et des accents. Le lancer sur 'perte focus' du nom principal :

Function Stcompact(maligne As String) As String
'
' on remplace tout les caracteres accentués par l'équivalent, et on supprime
les spéciaux
' SAUF la tabulation
'
' test avec mise à LOW Case de tout les caractères !! 13 10 2000
'
Dim curcar, longue, i, j, carout As Integer
Dim tempout As String
tempout = ""
If maligne = "" Then
Stcompact = tempout
Exit Function
End If
longue = Len(maligne)
For i = 1 To longue
curcar = Asc(Mid$(maligne, i, 1))
Select Case curcar
Case 0 To 8: carout = 0
' Case 9: carout = 9 tab, traité comme 'else'
Case 10 To 32: carout = 0 ' Blanc supprimé !!!
Case 33 To 47: carout = 0 ' "!", quotes et "(" ...
Case 58 To 64: carout = 0 ' :;<> ... @
Case 65 To 90: carout = curcar + 32
Case 91 To 96: carout = 0 ' [... £
Case 123 To 155: carout = 0
Case 156: tempout = tempout + "o" ' 9C oe liés !!
carout = 101
Case 157 To 191: carout = 0
Case 192 To 197: carout = 97 ' 65 ' A maj accents divers
Case 199: carout = 99 '67 ' C cedille
Case 200 To 203: carout = 101 '69 ' E accents
Case 204 To 207: carout = 105 '73 ' I accents
Case 210 To 214: carout = 111 '79 ' O accents
Case 217 To 220: carout = 117 '85 ' U accents
Case 224 To 229: carout = 97 ' a accents
Case 231: carout = 99 ' ç
Case 232 To 235: carout = 101 ' e accents
Case 236 To 239: carout = 105 ' i accents
Case 242 To 246: carout = 111 ' o accents
Case 249 To 252: carout = 117 ' u accents
Case Else: carout = curcar ' on ne change pas la lettre et TAB
End Select
If carout <> 0 Then
tempout = tempout + Chr$(carout)
End If
Next i
Stcompact = tempout
End Function

Tu peut ensuite créer un champ de recherche avec une requète portant sur le
nom
ET triée sur le champ compacté.

Ca ne s'applique pas instantanement sur ton probleme, mais avec adaptation,
ça devrait
t'aider.

Je l'utilise depuis plusieurs années pour rechercher des noms dont on ignore
l'orthographe exacte.

--
Jean.paulo
"td__" @belgacom.net> a écrit dans le message de
news:%23B5%
Bonjour,

Je fais une req. qui se termine comme ceci:
...WHERE (((TableCli.Nom_Cli) Like [Nom du client] & "*"));

J'introduis donc le nom du client afin de le retrouver dans une table.

Comment ignorer les espaces éventuels dans les noms ?

Ex.: le client "vanden trucmuch", figurant comme tel dans ma table, doit
pouvoir être trouvé si j'appelle
"van den trucmuch" ou encore "vandentrucmuch"
Je voudrais que les espaces soient ignorés dans ma requête.

Comment modifier mon instruction SQL ?

Merci,

--
Thierry
Perso pages: http://users.belgacom.net/gc009083










1 2