IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

comparer deux varchar2


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut comparer deux varchar2
    En fait, dans une intégration de pièces, les codes barres que portes des pièces est different de celui dans la base. exemple: 'FDG12LO3' ET 'FDG12L03'.
    ici par exemple au lieu de O on a 0.
    Je veux faire une fonction qui proposera des codes qui se ressemble à peu près et les proposez au utilisateur. J'ai essayé de faire une fonction mais je n'arrive pas.
    Savez vous comment faire une comparaison sur des code est d'essayer de selectinner ceux qui se ressemble à peu près.
    Merci

  2. #2
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    Bonjour,

    est ce que systematiquement O sera 0 ? ,
    dans ce ca il y a replace

    Sinon y a-t-il d'autres criteres de differneciation que O et 0 ?

    sinon quelle est ta version Oracle ?

    asktom.oracle.com tahiti.oracle.com otn.oracle.com

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.


    phrase chinoise issue du Huainanzi

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 136
    Points : 112
    Points
    112
    Par défaut
    Tu peux déjà jeter un oeil ici pour les fonctions sur les chaines de caractères (notamment replace et translate)
    http://sheikyerbouti.developpez.com/...age=Chap3#L3.1

    Mais ça peut devenir vite galère si tu veux imaginer toute les erreurs possibles (O en 0, 0 en O, l en 1, 1 en l... ).
    Si par exemple le code saisi est t0tO, tu veux proposer tOtO et t0t0 et tOt0? tu veux vérifier avant si les codes que tu proposes existent bel et bien dans la base?

  4. #4
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut
    Les codes de références ça peut être aussi des codes de référence avec erreur sur code barre comme un caractère qui manque (ça s'est déjà arrivé) comme 'AR12ETF3LM' référence enregistré dans la base, et sur code barre 'AR12ETF3M' le 'L' par exemple qui manque, je ne sais pas comment prévoir toutes les erreurs qui peuvent exisiter où dire que la référence sur code barre est semblable à qlq référence à par exemple 80% etc.
    Merci encore
    Citation Envoyé par brassouille Voir le message
    Tu peux déjà jeter un oeil ici pour les fonctions sur les chaines de caractères (notamment replace et translate)
    http://sheikyerbouti.developpez.com/...age=Chap3#L3.1

    Mais ça peut devenir vite galère si tu veux imaginer toute les erreurs possibles (O en 0, 0 en O, l en 1, 1 en l... ).
    Si par exemple le code saisi est t0tO, tu veux proposer tOtO et t0t0 et tOt0? tu veux vérifier avant si les codes que tu proposes existent bel et bien dans la base?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 136
    Points : 112
    Points
    112
    Par défaut
    Ben si t'es pas capable de prévoir tous les cas possibles je vois pas comment faire :-/

    Tu peux peut-être à partir de AR12ETF3M générer toutes les combinaisons possibles du genre :
    _R12ETF3M, A_12ETF3M, AR_2ETF3M, AR1_ETF3M, AR12_TF3M... (en remplaçant un caractère)
    ainsi que
    _AR12ETF3M, A_R12ETF3M, AR_12ETF3M, AR1_2ETF3M, AR12_ETF3M... (en ajoutant un caractère)

    et sélectionner dans ta base tous les enregistrements 'LIKE _R12ETF3M OR A_12ETF3M ....'

  6. #6
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut
    Oui c'est ce que j'avais pensé faire, je vais mettre ceci dans une lov. Comme ça l'utilisateur rapproche la référence erroné avec l'une des références que je vais ramené comme ça.
    Citation Envoyé par brassouille Voir le message
    Ben si t'es pas capable de prévoir tous les cas possibles je vois pas comment faire :-/

    Tu peux peut-être à partir de AR12ETF3M générer toutes les combinaisons possibles du genre :
    _R12ETF3M, A_12ETF3M, AR_2ETF3M, AR1_ETF3M, AR12_TF3M... (en remplaçant un caractère)
    ainsi que
    _AR12ETF3M, A_R12ETF3M, AR_12ETF3M, AR1_2ETF3M, AR12_ETF3M... (en ajoutant un caractère)

    et sélectionner dans ta base tous les enregistrements 'LIKE _R12ETF3M OR A_12ETF3M ....'

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/01/2005, 19h54
  2. comment comparer deux dates?
    Par billoum dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/08/2004, 21h08
  3. [STRUTS] Tag Equal, comparer deux variables
    Par logica dans le forum Struts 1
    Réponses: 2
    Dernier message: 04/06/2004, 12h01
  4. comparer deux string
    Par jul54 dans le forum MFC
    Réponses: 3
    Dernier message: 22/04/2004, 15h50
  5. [date] Comparer deux formats différents
    Par terziann dans le forum Requêtes
    Réponses: 17
    Dernier message: 21/07/2003, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo