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

Requêtes et SQL. Discussion :

Requete SQL complexe


Sujet :

Requêtes et SQL.

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 24
    Par défaut Requete SQL complexe
    Bonjour,

    je suis plutôt novice dans le SQL et je n'arrive pas à formuler la requête que je nécessite.

    Je dispose d'une table ENTREPRISE dans laquelle j'ai les champs suivants :
    Nom
    Labels

    Le champ Labels est un champ à valeur multiples, dans lequel on retrouve tous les labels de l'entreprise.

    Mon objectif est de pouvoir compter le nombre de labels que possède chaque entreprise, puis de définir un critère en fonction de ce nombre. Je m'explique :
    Si (nombre de label) = 0 , on renvoie "entreprise sans label"
    Si (nombre de labels)= 1, on renvoie " entreprise avec peu de labels"
    Si (nombre de labels) > 1, on renvoie " entreprise avec beaucoup de labels".

    Je parviens à réaliser cela en effectuant deux requêtes.
    1- Lors de la première requête, je compte le nombre de labels par entreprise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT T.[Nom Entreprise], (SELECT COUNT([Labels].Value) 
    FROM [Clients Potentiels] WHERE [Num]=[T].[Num]) AS [Nombre de labels]
    FROM [Clients Potentiels] AS T;
    2- Lors de ma seconde requête, j'utilise en paramètre le résultat que j'ai sur ma première requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT SWITCH( Entreprise.[Nombre de labels]='0',"Entreprise sans labels", Entreprise.[Nombre de labels]>'1',"Entreprise avec beaucoup de labels") AS CritèreLabels
    FROM Entreprise;
    Cependant, afin de ne pas créer trop de requêtes, j'aimerai que la requête soit effectuée en une seule fois. Cela est-il possible ? Si oui, comment procéder ?
    J'ai essayé de chercher dans ce que je trouvais dans les sous requêtes sans succès...

    Merci de votre aide !

    Baptiste

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 443
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 443
    Par défaut
    Personnellement j'utiliserai DCount() à la place de la sous-requête ... c'est moins "éléguant" mais plus facile à vivre `:-).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DCount("[Labels]";"[Clients Potentiels]";"[Num]=" & [Num])
    cela devrait donner un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT SWITCH(DCount("[Labels]","[Clients Potentiels]","[Num]=" & [Num])=0,"Entreprise sans labels", DCount("[Labels]","[Clients Potentiels]","[Num]=" & [Num])>1,"Entreprise avec beaucoup de labels") AS CritereLabels
    FROM Entreprise;
    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

Discussions similaires

  1. requete sql complexe
    Par susimido dans le forum Langage SQL
    Réponses: 1
    Dernier message: 23/04/2007, 17h01
  2. requete SQL complexe!
    Par cedlannoy dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/03/2007, 20h45
  3. requete sql complexe, que faire: 2 sql imbriques ou fonction date?
    Par Aliveli dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 22/06/2006, 20h20
  4. Requete SQL complexe
    Par isa21493 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 28/02/2006, 16h43
  5. Requete sql complexe
    Par ekinoxe dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 11/01/2006, 16h16

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