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 :

Like 'valeur' différent de like '%valeur%'


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 73
    Par défaut Like 'valeur' différent de like '%valeur%'
    Bonjour,

    Un utilisateur me pose une colle aujourd'hui
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select table.champ
    from user.table table
    where champ like 'valeur'
    => 3 résultats

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select table.champ
    from user.table table
    where table.champ like '%valeur%'
    => 1 résultat

    Du coup je lui demande de tester avec rawtohex pour vérifier la valeur et les 3 champs sont identique.

    Avez vous une piste ?

    Merci.

    PS : Version d'Oracle :10.2.0.4.0

  2. #2
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Curieux en effet, on attendrait plutôt le contraire.

    Et ça donne quoi avec Etes-vous capable de nous donner un jeu de test reproductible, avec des valeurs concrètes ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 73
    Par défaut
    Me donne le même résultat que

    Qu'entendez vous par jeux de valeurs ?

    Souhaitez vous que je retourne les résultats d'un select en dure ?

    Merci

    EDIT : Solution trouvée.
    Le problème vient de la mis à jour de l'index.
    Celui ci n'étant pas à jour il ne trouvait pas les résultats manquant.
    D'un coté, la requête utilisait l'index, de l'autre il ne l'utilisait pas et envoyait un résultat différent.

    Merci pour votre aide.

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Citation Envoyé par skyarnangel Voir le message
    ...Le problème vient de la mis à jour de l'index.
    Celui ci n'étant pas à jour il ne trouvait pas les résultats manquant...
    Ca n'a pas l'air de vous inquiéter plus que ça, mais ce scénario est censé être impossible !
    Si c'est vraiment le cas, c'est une bogue monstrueuse qu'il faut absolument remonter à Oracle.

    Comment avez-vous fait pour rectifier l'index ? Juste ALTER INDEX REBUILD ?

  5. #5
    Membre expérimenté Avatar de dariyoosh
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 236
    Par défaut
    Citation Envoyé par skyarnangel Voir le message
    [Souhaitez vous que je retourne les résultats d'un select en dure ?
    Fournir CREATE TABLE avec suffisamment INSERT (avec les valeurs pertinentes qui correspondent au problème) justement pour essayer (si possible) de reporduire le scénario.

    Et je partage ce que Pomalaix a dit. Essayez de revoir le problème, soit c'est une bogue soit vous n'avez pas bien ciblé la source du problème.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 73
    Par défaut
    Comment avez-vous fait pour rectifier l'index ? Juste ALTER INDEX REBUILD ?
    Oui, depuis j'ai les bonnes valeurs.

    Le problème est de reproduire le cas, étant donné que depuis le rebuild tout fonctionne.

  7. #7
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    Gravissime si cela s'avére vrai !

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/03/2014, 12h39
  2. Requte avec like a partir de la valeur d'un champ de formulaire
    Par GuyDuLac dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 22/05/2013, 20h31
  3. Réponses: 7
    Dernier message: 15/09/2010, 08h32
  4. [AC-2000] Le SQL « AjouteràWhere » et « Like » ne reconnaît pas la valeur numériq
    Par Observateur dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 01/05/2009, 13h33
  5. Le nombre de valeurs différentes d'un champs
    Par XecTech dans le forum Requêtes
    Réponses: 4
    Dernier message: 15/06/2005, 21h10

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