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

SQL Oracle Discussion :

[Oracle Text] Rechercher de nombre


Sujet :

SQL Oracle

  1. #1
    Membre chevronné

    Inscrit en
    Avril 2005
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 317
    Par défaut [Oracle Text] Rechercher de nombre
    J'utilise Oracle Text pour effectuer des recherches dans des champs contenant du texte (VARCHAR)
    Le problème est que si je recherche un nombre contenu dans un des ces champs textes, Oracle Text ne le trouve pas...

    Exemple :
    Mon champ contient "produit : Cheval à bascule / Référence du produit : 812457 / Poids 15 kilos"
    Si je cherche "Cheval" => Oracle Text trouve
    Si je cherche "812457" => Pas trouvé.

    Merci de votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    ça ne serait pas une option à définir dans le lexer ?

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Bonjour,

    Est ce que tu peux poster le script de création d'index.
    Il existe pas mal d'options !
    Laurent.

  4. #4
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par ericw78 Voir le message
    J'utilise Oracle Text pour effectuer des recherches dans des champs contenant du texte (VARCHAR)
    Le problème est que si je recherche un nombre contenu dans un des ces champs textes, Oracle Text ne le trouve pas...

    Exemple :
    Mon champ contient "produit : Cheval à bascule / Référence du produit : 812457 / Poids 15 kilos"
    Si je cherche "Cheval" => Oracle Text trouve
    Si je cherche "812457" => Pas trouvé.

    Merci de votre aide
    Vous devez détailler ce problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    Connected to Oracle9i Enterprise Edition Release 9.2.0.5.0 
    Connected as mni
     
    SQL> 
    SQL> create table mytext
      2  ( id number primary key,
      3    thetext varchar2(4000)
      4  )
      5  /
     
    Table created
    SQL> insert into mytext
      2  values( 1, 'produit : Cheval à bascule / Référence du produit : 812457 / Poids 15 kilos')
      3  /
     
    1 row inserted
    SQL> insert into mytext
      2  values( 2, 'Oracle has many training centers around the world.')
      3  /
     
    1 row inserted
    SQL> commit
      2  /
     
    Commit complete
    SQL> create index mytext_idx
      2      on mytext( thetext )
      3      indextype is CTXSYS.CONTEXT
      4  /
     
    Index created
    SQL> select id, thetext
      2    from mytext
      3    where contains( thetext, '812457') > 0
      4  /
     
            ID THETEXT
    ---------- --------------------------------------------------------------------------------
             1 produit : Cheval à bascule / Référence du produit : 812457 / Poids 15 kilos
     
    SQL>

  5. #5
    Membre chevronné

    Inscrit en
    Avril 2005
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 317
    Par défaut
    C'est résolu

    En fait, désolé, j'avais mal compris mon problème....
    L'utilisateur cherchait 812457 dans un enregistrement qui contenait C812457X
    Or, il semblerait qu'avec Oracle Text, la recherche s'exécute sur des mots entiers (ou est-ce ma config ?)
    Il fallait donc rechercher %812457% pour trouver qqchose

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par ericw78 Voir le message
    Or, il semblerait qu'avec Oracle Text, la recherche s'exécute sur des mots entiers (ou est-ce ma config ?)
    Je crois que oui, c'est la config par défaut en utilisant le catsearch.
    Mais attention, il y a tellement de paramètres avec Oracle Text qu'il est bien de préciser de quoi l'on parle avec des scripts et pas rester dans le vague.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. SQL Oracle 9 : Recherche de texte
    Par christ_28360 dans le forum SQL
    Réponses: 4
    Dernier message: 21/11/2009, 01h07
  2. Réponses: 0
    Dernier message: 16/03/2009, 11h13
  3. Performance des recherches Oracle Text
    Par methosxp dans le forum SQL
    Réponses: 0
    Dernier message: 04/09/2007, 16h49
  4. [10g] Recherche Oracle Text
    Par hotkebab99 dans le forum Oracle
    Réponses: 1
    Dernier message: 18/01/2006, 10h25
  5. recherche du nombre d'occurences dans une table
    Par berry dans le forum Requêtes
    Réponses: 3
    Dernier message: 09/01/2004, 20h03

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