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 :

Problème requete sélection


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2007
    Messages
    355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Mars 2007
    Messages : 355
    Points : 119
    Points
    119
    Par défaut Problème requete sélection
    Merci des réponses mais rien ne marche.
    Mon souhaite connaitre la somme Entre 10 m et 20 m.Entre 20 et 30.Entre 30 et 40. Entre 40 et 50 m...
    Mes plongées s'étalent entre 10;13;15;18;20 m ce qui fait 5 plongées dans la zone des 10 et 20 m
    Ma base en contient plus de 450 jusqu'à 63m

    Entre 10 et 20: Somme((((((((VraiFaux((([Profondeur])+[Profondeur])>10;VraiFaux((([Profondeur])+[Profondeur])<=20;1;0);0)))))))))

    Comment s'écrit la requête je suis un débutant d'access

  2. #2
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    bonjour,


    Si tu as les profondeurs entre 10 et 20m comme telles : 10, 13, 15, 18, 20

    une requete SQL toute simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SUM(profondeur) FROM LeNomDeTaTable WHERE profondeur BETWEEN 10 AND 20
    Ca te donnera 76

    par contre, celle-ci te donnera 5 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Count(profondeur) FROM LeNomDeTaTable WHERE profondeur BETWEEN 10 AND 20
    Et voila
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  3. #3
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    et si tu crée un champ supplémentaire tranche?

    tranche: arrondi(profondeur/10)

    tu groupe dessus et tu sommes tes valeurs...

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Points : 2 221
    Points
    2 221
    Par défaut
    bonjour,

    En passant par une requête d'analyse croisée vous obtenez le compte des plongées par tranche de profondeur (entre 0 et 99 mètres):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    TRANSFORM Count(tP.Profondeur) AS CpteProfondeur
    SELECT "Total par tranche de profondeur" AS [Nombre de plongée(s)]
    FROM Profs AS tP
    GROUP BY "Total par tranche de profondeur"
    PIVOT Choose([Profondeur]\10+1,"Entre 0 et 9","Entre 10 et 19","Entre 20 et 29","Entre 30 et 39","Entre 40 et 49","Entre 50 et 59","Entre 60 et 69","Entre 70 et 79","Entre 80 et 89","Entre 90 et 99") In ("Entre 0 et 9","Entre 10 et 19","Entre 20 et 29","Entre 30 et 39","Entre 40 et 49","Entre 50 et 59","Entre 60 et 69","Entre 70 et 79","Entre 80 et 89","Entre 90 et 99");
    J'ai considéré que la table se nomme <Profs> et la colonne des profondeurs se nomme <Profondeur>

    Cordialement,

    Philippe

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonsoir;

    Et avec Partition? Genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Count(tblPlongee.Profondeur) AS CompteDeProfondeur, Partition([Profondeur],1,150,10) AS Plage
    FROM tblPlongee
    GROUP BY Partition([Profondeur],1,150,10);
    Cordialement.

    PS : Je suis optimiste : 150 m!
    Questions techniques par MP
    Le peu que je sais, c'est à mon ignorance que je le dois.
    ...............................................................................Sacha Guitry

  6. #6
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    Merci francishop je dormirais ce soir moins bête

  7. #7
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    mais toutefois c un peu bizard les résultats
    10,x reste dans la première plage

    Partition([Profondeur],0,150,10)

    n'est pas mieux car 9,x entre dans la plage suivante
    or les plages doivent être:
    0->9,x
    10->19,x
    ...

    reste à mettre en cm... pour que ca marche
    remarque: int([Profondeur]) crée ce même problème

    je réitère avec Fix([Profondeur]/10):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Count(tblPlongee.Profondeur) AS CompteDeProfondeur, Fix([Profondeur]/10) AS Plage
    FROM tblPlongee
    GROUP BY Fix([Profondeur]/10);

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Partition([Profondeur],0,149,10)
    Elle est pas belle la vie ?

  9. #9
    Membre régulier
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2007
    Messages
    355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Mars 2007
    Messages : 355
    Points : 119
    Points
    119
    Par défaut Problème requête sélection
    Merci à tous et plus particulièrement à Philben car son code marche et correspond exactement à ce que je voulais. A bientôt sur le forum et encore merci

  10. #10
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    Effectivement, j'avais imaginé que tu prennais des performances en tenant compte des deux: profondeur et temps.
    bonne continuation

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

Discussions similaires

  1. [AC-2003] sous Requete sélection aléatoire dans requete update. Problème de syntaxe
    Par Chagui dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 19/04/2011, 10h58
  2. Problème de sélection dans une requete
    Par formidable78 dans le forum IHM
    Réponses: 1
    Dernier message: 09/09/2008, 09h32
  3. problème requete sql
    Par Fred- dans le forum ASP
    Réponses: 2
    Dernier message: 13/06/2004, 02h20
  4. Problème Requete SQL et QuickReport
    Par arnaud_verlaine dans le forum C++Builder
    Réponses: 7
    Dernier message: 07/01/2004, 09h31
  5. [CR] Problème de sélection sur un champ date
    Par noluc dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/11/2003, 16h56

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