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 :

Requête imbriquée


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 19
    Par défaut Requête imbriquée
    Bonjour,
    je suis en train de développer un formulaire(sous forme de checkbox) selon lequel un internaute peut effectuer des recherches dans ma base selon plusieurs criteres.
    Il existe donc plusieurs combinaisons pour traiter ces requetes.
    EX:
    Choix critere 1
    rouge
    bleu
    noir
    ...
    Choix critere2
    balle de tennis
    balle ping pong
    balle foot
    .....

    L'utilisateur peut choisir plusieurs critères de Choix 1 en les combinant aux critères de Choix 2.

    J'ai donc écrit une fonction pour générer une requête en fonction des critères choisis.
    Mais je rencontre des problèmes dans d'autres fonctions qui font que je peux pas tester mon script.
    Je voudrais donc savoir pour etre rassuré est ce qu'une requête du genre :
    T1 union T2 union T3 union T4 IN (T11 union T12 union T13);
    est syntaxiquement correct.
    Les Ti representent des select id from table where colonne='attribut x'

    Merci d'avance pour vos réponses.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    Bonjour, non.

    Peut-etre pourriez-vous présenter correctement votre besoin afin que l'on vous oriente un peu mieux ? (sgbd, table, exemple de résultat voulu, ...)

  3. #3
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    T1 union T2 union T3 union T4 IN (T11 union T12 union T13);
    dans l'idée oui pour la partie de gauche mais pourriez vous précisez la partie avec le 'IN' dont je n'ai pas saisi l’intérêt.

    Précisez votre SGBD merci.

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 19
    Par défaut
    Bonjour,
    tout d'abord je vous remercie pour votre intérêt.
    J'utilise postgresql comme sgbd.
    J'ai une table entreprise qui contient: l'id de l'entreprise,nom,métier,ville, longitude,latitude (ces coordonnées géographique sont utilisés pour localiser apres l'entreprise sur la carte).
    L'utilisateur doit pouvoir effectuer une recherche par ville et/ou par metier de l'entreprise.

    Ex: je veux les coordonnées géographique des entreprises qui se trouvent dans Paris,Lille,Bordeaux dont le métier principal est : logistique,réseau,informatique.

    L'idée que j'ai eu donc ,c'est de generer en premier une requete pour chaque metier coché dans le formulaire. Puis de faire l'union entre les requetes générées pour d'autres metiers.
    Idem pour les villes.
    Et enfin pour lier la sous-requete ville avec la requete metier, j'utilise un IN.

  5. #5
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    donc si je comprend bien :
    une entreprise va avoir autant d’occurrence dans votre table qu'elle n'a de métier et qu'elle n'a de géolocalisation différente ....?

    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    id entr, nom, metier, ville
    1, ent1, informatique, lyon
    1, ent1, réseau, lyon
    1, ent1, informatique, paris
    1, ent1, réseau, paris
    1, ent1, logistique, paris

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 19
    Par défaut
    Oui exactement, c'est bien ca.
    Il existe peut être un autre moyen...?

  7. #7
    Membre Expert
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 157
    Par défaut
    bonjour

    ce serait bien d'avoir la structure de la (des) table(s). Mais j'ai l'impression qu'il n'y en a qu'une

    et comme le sous-entend Punkoff, il y aurait un souci dans la modelistation de la base...

    tres rapidement, il faudrait une table 'entreprise', une table 'activite', une table 'ville' et enfin une table des 'activite des entreprises'. cela permetterai de construire des requetes plus 'rigoureuses' pour un probleme, somme toute, pas si complexe

Discussions similaires

  1. Pb requête imbriquée
    Par ddams dans le forum Requêtes
    Réponses: 11
    Dernier message: 20/04/2004, 12h13
  2. [Requête] Faire une requête imbriquée?
    Par sekiryou dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/01/2004, 22h52
  3. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  4. Requêtes imbriquées ?
    Par Ph. B. dans le forum XMLRAD
    Réponses: 7
    Dernier message: 06/05/2003, 13h19
  5. Requête imbriquée et indexes INTERBASE
    Par vadim dans le forum InterBase
    Réponses: 2
    Dernier message: 06/09/2002, 16h15

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