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 :

Ajouter un filtre supplémentaire dynamiquement à ma requête


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Katachana
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2007
    Messages : 755
    Par défaut Ajouter un filtre supplémentaire dynamiquement à ma requête
    Bonjour,

    voila ma requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT b.service_description FROM service AS b,host_service_relation AS t WHERE t.host_host_id='".$hostdetails["host_id"]."' AND b.service_id=t.service_service_id
    Je récupere ainsi un ensemble de "service_descritpion".
    Mon probleme est que j'ai besoin d'ajouter un filtre supplémentaire sur ce que je récupere .....

    Exemple de ce que j'ai en sortie:
    - e_toto_aaa
    - e_toto_bbbb
    - e_toto_ccc
    - e_test_ccc
    - e_test_bbb
    ........

    Dans l'exemple présenté je n'arrive pas à trouver comment recupérer seulement e_toto_aaa et non les trois, sachant que ce que je récupere est dynamique.

    Merci beaucoup d'avance!

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Dans l'exemple présenté je n'arrive pas à trouver comment recupérer seulement e_toto_aaa et non les trois, sachant que ce que je récupere est dynamique.
    Ta question n'est pas très claire, je pense qu'il te faut un GROUP BY, mais pas bien compris ce que tu souhaite.

    Exemple de ce que j'ai en sortie:
    - e_toto_aaa
    - e_toto_bbbb
    - e_toto_ccc
    - e_test_ccc
    - e_test_bbb
    ........
    Pas compris non plus, quelle sont les données ? c'est quoi le _ ?

  3. #3
    Membre chevronné
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Par défaut
    Bonjour,


    tu as essayé avec un LIKE ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND b.service_description LIKE 'e_toto_aaa'
    que tu ajustes à ta convenance.

  4. #4
    Membre éclairé Avatar de Katachana
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2007
    Messages : 755
    Par défaut
    c'est vrai que ce n'est pas tres clair.

    les données que je récupere sont sous la forme :

    "un caractere"_"chaine1"_"chaine2"

    Ce que j'essaye d'avoir c'est une seule donnée du type
    "un caractere"_"chaine1"_"chaine21"

    lorsque j'ai :
    "un caractere"_"chaine1"_"chaine21"
    "un caractere"_"chaine1"_"chaine22"
    "un caractere"_"chaine1"_"chaine23"
    "un caractere"_"chaine1"_"chaine24"

    pour ensuite la couper et n'obtenir que "un caractere"_"chaine1" sachant que "chaine1" peut das certains cas sous cette forme "chaine1"_"parametresupplémentaire"

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    C'est quoi ton underscore, on sait pas ou commence et fini la donnée et à quelle colonne elle appartient.

    "un caractere"_"chaine1"_"chaine21"
    "un caractere"_"chaine1"_"chaine22"
    "un caractere"_"chaine1"_"chaine23"
    "un caractere"_"chaine1"_"chaine24"
    Ca veux dire quoi ?????? à quoi correspondent un caractere, chaine1, chaine2

    Dans ta requete je vois 2 colonnes : service_description et host_service_relation

    Je sais pas faire le lien, dans ton tableau d'exemple met le titre des colonnes et les données en dessous. Tu as 2 colonnes dans ta requête et j'ai l'impression que tu met 3 données dans ton exemple, bref pas clair

  6. #6
    Membre éclairé Avatar de Katachana
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2007
    Messages : 755
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    "un caractere"_"chaine1"_"chaine21"
    "un caractere"_"chaine1"_"chaine22"
    "un caractere"_"chaine1"_"chaine23"
    "un caractere"_"chaine1"_"chaine24"
    Cela est contenu dans un seul champ d'une table.
    La décomposition que j'ai faite ci dessus correspond au format de la donnée contenu dans un champ de la table.

    Exemple :: pour un table info qui possede un champ "nom" , voila ce que donnerais les données contenu dans le champ nom :

    A_entreprise_sud
    A_entreprise_nord
    A_entreprise_est
    A_client_sud
    A_client_nordsud
    A_potentiel_sudsudest
    A_potentiel_ouest
    etc etc


    Dans ma requete je récupere les infos du champ "service_description" qui correspondrait dans mon exemple au champ "nom".

    j'aimerais que le resultat de ma requete contienne cela :
    A_entreprise_sud
    A_client_nordsud
    A_potentiel_ouest


    J'espere que c'est plus clair....

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Ca se précise, mais si
    A_entreprise_sud
    A_entreprise_nord
    A_entreprise_est
    A_client_sud
    A_client_nordsud
    A_potentiel_sudsudest
    A_potentiel_ouest
    représente un seul champ, ca deviens beaucoup plus compliqué pour faire ce que tu veux, tu ne peux pas exploiter les possibilité de MySQL.

    Je pense que ta base est mal concu, tu devrais décomposer tes champs en plusieurs champs. Je sait pas ce que représente les données entre chaque tiret, mais dans cet exemple je verrais biens 3 champs (colonnes).

    Après je pourrais t'aider pour les requêtes qui vont bien.

Discussions similaires

  1. paramétrage dynamique de requête
    Par tojiji dans le forum VBA Access
    Réponses: 16
    Dernier message: 06/07/2006, 12h15
  2. Ajouter/Supprimer un select dynamiquement
    Par n@n¤u dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/06/2006, 10h22
  3. ADOTable : ajouter un champ en dynamique aux champs existant
    Par Sunchaser dans le forum C++Builder
    Réponses: 2
    Dernier message: 25/03/2006, 17h06
  4. Réponses: 4
    Dernier message: 15/11/2005, 12h19
  5. Récupérer valeur contrôle en dynamique via requête
    Par nicburger dans le forum Access
    Réponses: 10
    Dernier message: 15/09/2005, 15h41

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