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 :

[SQL] requete de vérification de disponibilité par activité


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 98
    Points : 59
    Points
    59
    Par défaut [SQL] requete de vérification de disponibilité par activité
    Bonjour,

    J'ai une requete a faire, je m'explique.

    Je fais un programme ou des enfants s'inscrivent a des activités.

    Je voudrait une requete pour aller voir dans la base s'il reste des places dispo pour l'inscription.

    Mes tables se presentes ainsi :

    Table jeune :

    NumJeune
    NomJeune
    PrenomJeune
    DateNaissanceJeune

    Table activite :

    NumActivite
    LibelleActivite
    DateActivite
    Heuredebut
    Heuerefin
    LieuActivite
    PlaceMax
    Prix

    Table participer (qui est la relation sur le MCD)

    NumJeune
    NumActivite

    Quel requete feriez vous ?

    Merci de m'aider

  2. #2
    Membre confirmé Avatar de juvamine
    Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2004
    Messages : 414
    Points : 502
    Points
    502
    Par défaut
    select numActivite,count(*) as nbParticipant,placemax from activite a,participer p where a.numativite=p.numactivite and numactivite=1000 group by numactivite,placemax;

    du coup tu compare nbparticipant et placemax et tu sais si t'as encore de la place

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Salut juvamine je viens de voir ta réponse et moi aussi j'ai une question à propos de ma base de données (je suis stagiaire dans une entreprise) :
    J'ai une table fournisseurs et une table produits, la finalité est que l'utilisateur doit pouvoir, à partir de la sélection d'un produit, faire apparaître tous les fournisseurs qui le possèdent. Or dans les champs de ma table F j'ai numf, nomf, adressef, telf, paysf, sitef, et dans ma table P j'ai nump, nomp, nom2p, nom3p (1 prod peut avoir plusieurs noms). Je vois pas vraiment comment avec ces données je vais faire une requête qui répondra à ce besoin. Peux-tu m'éclairer ? Que me manque-t-il ?

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    salut Pierrobihno,

    tu as une table avec des fournisseur et une table avec des produits mais n'as tu pas par exemple une table ou il y a une relation entre les 2 (qui relie numéro du produit avec numéro fournisseur par exemple)?

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 98
    Points : 59
    Points
    59
    Par défaut
    Bon moi ca marche j'ai fait deux requetes que j'ai mis dans des variables (une qui regarde combien il y a d'inscrit et l'autre qui regarde comment il y a de place maxi) et si requete1 = requete2 et bien pas d'inscription

    Merci

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    En fait la relation entre les deux tables est implicite puisque dans un modèle conceptuel les cardinalités sont 1,n des deux côtés donc la relation crée une nouvelle table dont la clé primaire est la réunion des deux clés primaires numP et numF. C'est pourquoi j'ai du mal à saisir.....

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 98
    Points : 59
    Points
    59
    Par défaut
    Bah tu fais la liaison dans ta requete SQL

    SELECT NumF
    FROM fournisseur, relation, produit
    WHERE fournisseur.numF = relation.NumF
    AND produit.NumP = relation.NumP
    AND NumP = 1

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 140
    Points : 166
    Points
    166
    Par défaut
    Salut,

    Si c'est NumP que tu connais dans la table produit pas besoin de faire la jointure avec produit.

    Si c'est le nom du produit que tu connais ce qui parait plus logique, il faut faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT distinct NumF
    FROM fournisseur, relation, produit
    WHERE fournisseur.numF = relation.NumF
    AND produit.NumP = relation.NumP
    AND (nomp = @nomp or nom2p = @nomp or nom3p =@nomp)

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

Discussions similaires

  1. [SQL] requete INSERT possible?
    Par clad523 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/08/2005, 15h42
  2. [SQL] Requete de Sauvegarde
    Par Diablo_22 dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 29/07/2005, 18h12
  3. [SQL] requetes inbriquées un peu plus complexe.
    Par Devil666 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/05/2005, 11h06
  4. [SQL] requetes inbriquées, comment faire celle ci??
    Par Devil666 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 20/05/2005, 15h44
  5. [MS-SQL]requete sur 3 tables
    Par pascalT dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 30/04/2003, 11h24

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