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

PHP & Base de données Discussion :

Planchage sur une requête de recherche [MySQL]


Sujet :

PHP & Base de données

Vue hybride

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 64
    Par défaut Planchage sur une requête de recherche
    Bonjour, j'ai un souci avec une requete "select". Je m'explique. J'aimerai faire une recherche dans le champs LivreAnnexe de ma table livres.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql="SELECT * FROM livres WHERE .............
    Mon souci c'est que dans mon champ je cherche un nombre.
    Le champ LivreAnnexe est du genre : 1,20,300,254,2,6
    J'aimerai que lorsque je fais ma recherche, il me trouve seulement le nombre 2 par exemple et pas le nombre 20 ou 254. Je suppose que ca demande une expression régulière mais j'avoue que je suis assez nul la dedans. Si quelqu'un pouvait m'aider s'il vous please !!!

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 063
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 063
    Par défaut
    Bonjour,

    Si ton champ contient des nombres séparés par des virgules (c'est important que ce soit des virgules) et que tu veux savoir si le nombre 2 est présent dedans, alors tu peux utiliser la fonction FIND_IN_SET :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * 
    FROM livres 
    WHERE FIND_IN_SET('2', LivreAnnexe) IS NOT NULL
    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 64
    Par défaut
    Alors j'ai tester seulement je ne sais pas comment l'exploité en php.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $selectou="SELECT * FROM meilleures_ventes WHERE FIND_IN_SET('$IdArticle','$OrdreMeilleuresVentes') IS NOT NULL";
    					echo $selectou;
    					$i=0;
    					$reqou=mysql_query($selectou) or die('Erreur SQL !<br>'.$selectou.'<br>'.mysql_error());					
    					while($datou = mysql_fetch_row($reqou)){						
    					$result=$datou[$i];
    					echo "<br/>////////".$result;
    					$i++;
    					}
    Alors je sais pas comment l'exploiter. Ce qui m'interesse c'est de savoir si le nombre est présent. Si oui .... Sinon ....
    C'est juste pour vérifier la présence du chiffre dans ma petite liste.

  4. #4
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 063
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 063
    Par défaut
    Là, ça devient un problème de PHP...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 64
    Par défaut
    oki merci je vias voir dnas la session php

  6. #6
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    Citation Envoyé par tombabibel Voir le message
    C'est juste pour vérifier la présence du chiffre dans ma petite liste.
    Tu admettras donc volontiers qu'un SELECT * ne s'impose pas.
    Au supermarché, tu ne remplis pas ton caddie juste pour ne payer qu'un bouteille d'eau minérale à la caisse, si ?
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 64
    Par défaut
    Citation Envoyé par Maljuna Kris Voir le message
    Tu admettras donc volontiers qu'un SELECT * ne s'impose pas.
    Au supermarché, tu ne remplis pas ton caddie juste pour ne payer qu'un bouteille d'eau minérale à la caisse, si ?
    Alors que me conseils tu comme requete ?

  8. #8
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Ben pas un select * mais plutôt un SELECT que sur les champs dont tu as réellement besoin

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/11/2014, 18h39
  2. Recherche une valeur proche sur une requête
    Par 64moss dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 10/10/2012, 13h02
  3. effectuer une recherche sur une requête en windev
    Par tytyone554 dans le forum Développement
    Réponses: 0
    Dernier message: 09/10/2009, 16h48
  4. Je recherche de l'aide sur une requête avec dates
    Par Alain CARDINI dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 22/05/2008, 22h11
  5. recherche multicritères sur une requête?
    Par amélie22 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 23/06/2006, 11h25

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