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

MS SQL Server Discussion :

Problèmes avec LIKE


Sujet :

MS SQL Server

  1. #1
    Membre averti Avatar de sami_c
    Profil pro
    Chef de projet
    Inscrit en
    Mai 2002
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Mai 2002
    Messages : 758
    Points : 407
    Points
    407
    Par défaut Problèmes avec LIKE
    Salut,
    Dans ma table CLIENT j'ai la valeur suivante (colonne NOM)
    toto''test (double apostrohpe)

    la requete suivante fonctionne bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select nom from client where nom like '%toto''%'
    par contre celle là ne donne rien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select nom from client where nom like '%toto''te%'
    meme roblème quand j'ai au lieu des apostrophes un des caratères suivants :
    + " - # ...

    je ne comprends pas c'est quoi le pb !!!???

  2. #2
    Membre actif Avatar de f_bobo
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Mai 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 202
    Points : 281
    Points
    281
    Par défaut
    Salut,

    En fait le système pense qu'il y a deux éléments derrières le like.
    Ci-dessous, la requête qui devrait fonctionner.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select nom from client where nom like '%toto%'

  3. #3
    Membre averti Avatar de sami_c
    Profil pro
    Chef de projet
    Inscrit en
    Mai 2002
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Mai 2002
    Messages : 758
    Points : 407
    Points
    407
    Par défaut
    mais moi je chercher à faire fonctionnet correctement la requete qui prend l'apostrophe et ce qui suit
    Par exp j'ai dans la base ces noms :
    1 - toto
    2 - toto''
    3 - toto'' test 1
    4 - toto'' test 2
    5 - toto'' test 3

    je voudrais affiche les clients sont le nom commence par toto'' test (c-a-d 3,4,5) et pas le reste (1,2)

  4. #4
    Membre actif Avatar de f_bobo
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Mai 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 202
    Points : 281
    Points
    281
    Par défaut
    Bon alors essais avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    like '%toto?test%'
    de mémoire, le ? correspond à un caractère joker, le % une suite de caractère.
    Mais bon, ma mémoire est parfois dans un état

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Points : 502
    Points
    502
    Par défaut
    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
     
    create table search (val varchar(50) null)
     
    insert into search select 'toto'
    insert into search select 'toto'''''
    insert into search select 'toto'''' test 1'
    insert into search select 'toto'''' test 2'
    insert into search select 'toto'''' test 3'
     
    select * from search where val like 'toto'''' %'
     
    resu 
    toto'' test 1
    toto'' test 2
    toto'' test 3

  6. #6
    Membre averti Avatar de sami_c
    Profil pro
    Chef de projet
    Inscrit en
    Mai 2002
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Mai 2002
    Messages : 758
    Points : 407
    Points
    407
    Par défaut
    essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from search where val like 'toto'''' te%'

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Points : 502
    Points
    502
    Par défaut
    Citation Envoyé par sami_c
    essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from search where val like 'toto'''' te%'
    A qui t'adresses-tu ?

    si à moi, ta requete me donne le résultat suivant (Cf jeu de test ci-avant)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    toto'' test 1
    toto'' test 2
    toto'' test 3

  8. #8
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Citation Envoyé par f_bobo
    de mémoire, le ? correspond à un caractère joker, le % une suite de caractère.
    Mais bon, ma mémoire est parfois dans un état
    Salut,

    Pour étayer ta mémoire : pour le LIKE, le caractère joker est le _

  9. #9
    Membre actif Avatar de f_bobo
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Mai 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 202
    Points : 281
    Points
    281
    Par défaut
    Citation Envoyé par rudib
    Salut,

    Pour étayer ta mémoire : pour le LIKE, le caractère joker est le _
    Merci beaucoup

Discussions similaires

  1. petit problème avec like
    Par kapotocho dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 21/01/2008, 17h09
  2. [ADO] Problème avec LIKE dans requête paramétrée
    Par _skip dans le forum Connexion aux bases de données
    Réponses: 7
    Dernier message: 04/11/2007, 20h53
  3. Problème avec like dans une requête SQL
    Par Boublou dans le forum SQL
    Réponses: 2
    Dernier message: 16/08/2007, 15h46
  4. Problème avec LIKE
    Par Ti-R dans le forum Requêtes
    Réponses: 9
    Dernier message: 07/09/2006, 11h58
  5. Problémé avec LIKE est %
    Par lassmust dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 03/10/2005, 17h00

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