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

Langage SQL Discussion :

[MySQL] requete avec LIKE


Sujet :

Langage SQL

  1. #1
    Membre du Club Avatar de hamham
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 47
    Points
    47
    Par défaut [MySQL] requete avec LIKE
    Bonjour à tous et bonne année!!

    je viens vous demander votre aide, je suis débutante en SQL!

    Je suis entrain de faire une vidéothèque et là je m'occupe du moteur de recherche. J'ai une table film qui contient le titre du film. Je souhaite trouver tous les films contenant un mot donné par l'utilisateur.

    je vous donne trois titres de films (inventés) : a tout jamais / tout arrive un jour / l'attout du mal

    Je cherche le mot tout.
    J'ai d'abord essayé avec un like '%tout%' mais il trouve le mot attout ce qu'il ne faut pas
    puis avec like '% tout %', dans ce cas la il ne trouve plus "tout arrive un jour"

    Si vous avez une idée, aidez moi MERCI

  2. #2
    Membre éprouvé
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 276
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 276
    Points : 1 281
    Points
    1 281
    Par défaut
    et si tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    champ like '% tout %' OR champ like '%tout %' OR champ like '% tout%'

  3. #3
    Membre du Club Avatar de hamham
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 47
    Points
    47
    Par défaut
    avec ta proposition je retrouve "attout".

    J'ai essayé de rajouter un espace devant et un derrière dans la base de données, pour utiliser seulement '% tout %',mais celui de derrière n'a pas marché.

  4. #4
    Membre du Club Avatar de hamham
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 47
    Points
    47
    Par défaut
    Ton idée m'a mise sur la voix, la bonne requête est la suivante (enfin elle marche, il y a peut être mieux à faire!) :

    SELECT Titre
    FROM film
    WHERE Titre LIKE '% tout %'
    OR Titre LIKE 'tout %'
    OR Titre LIKE '% tout'
    je retrouve bien les films suivants :
    a tout jamais / tout arrive un jour

    Merci

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 102
    Points : 28 387
    Points
    28 387
    Par défaut
    Une toute petite correction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT Titre
    FROM film
    WHERE Titre LIKE '% tout %'
    OR Titre LIKE 'tout %'
    OR TRIM(Titre) LIKE '% tout'

  6. #6
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 284
    Points : 11 738
    Points
    11 738
    Par défaut
    Ça ne marcherait pas avec "rien sur tout... et réciproquement", ni avec "je dirai tout: merci", etc.

    Il faut utiliser une expression régulière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Titre
    FROM film
    WHERE Titre REGEXP '[[:<:]]tout[[:>:]]'

  7. #7
    Membre du Club Avatar de hamham
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 47
    Points
    47
    Par défaut
    Merci, je n'avais pas pensé à tous ça!

    Bye

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

Discussions similaires

  1. Requete avec LIKE et IN
    Par eowene dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/01/2007, 09h09
  2. Requete avec LIKE
    Par Eome dans le forum Langage SQL
    Réponses: 1
    Dernier message: 31/08/2006, 21h37
  3. MYSQL - requete avec un intervale de DATE
    Par mastronic dans le forum Requêtes
    Réponses: 3
    Dernier message: 08/08/2006, 16h25
  4. [MySQL] requete avec cumul mois par mois
    Par michaelbob dans le forum Langage SQL
    Réponses: 5
    Dernier message: 16/01/2006, 15h32
  5. oracle 8.1.7, CLOB et requete avec like
    Par fsapet dans le forum Oracle
    Réponses: 5
    Dernier message: 15/02/2005, 11h45

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