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 :

Activités confirmées et requête SQL


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 77
    Par défaut Activités confirmées et requête SQL
    Bonjour,

    Je dois compter les activités qui doivent être confirmées, c'est à dire les activités dont la date est <= 20 jours de la date du jour.
    A cette somme, je dois soustraire les activités qui sont déjà confirmées (elles sont dans une autre table)

    Mon objectif est d'annoncer si il reste des activités à confirmer.

    mes tables :
    activites(num_activite, intitule,date,...)
    confirmations(num_confirmation, num_activite,date,qui)

    Voici le requête que je test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT COUNT( activites.num_activite ) 
    FROM activites, confirmations
    WHERE activites.num_activite = confirmations.num_activite
    AND TO_DAYS( NOW())- TO_DAYS( date1 )<=20
    AND activites.date1 <='$datedujour'
    Cette requête me retourne la ou les activités confirmées donc l'inverse de ce que je désire.

    Avez-vous une idée pour modifier la requête ?

    Je vous remercie +++

  2. #2
    Membre éclairé Avatar de rinuom99
    Étudiant
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Par défaut
    essayer avec ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT  COUNT( activites.num_activite )
    FROM activites, confirmations
    WHERE activites.num_activite != confirmations.num_activite

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 77
    Par défaut requete activités
    Bonjour et merci,

    Voici le résultat : 124976 ??

    merci

    Citation Envoyé par rinuom99 Voir le message
    essayer avec ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT  COUNT( activites.num_activite )
    FROM activites, confirmations
    WHERE activites.num_activite != confirmations.num_activite

  4. #4
    Membre éclairé Avatar de rinuom99
    Étudiant
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Par défaut


    pourquoi tu n'ajoute pas un champ dans la table activites pour indiquer si l'activité est confirmée ou non !!

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 77
    Par défaut re
    Les tables sont utilisées comme ça, d'autres requêtes fonctionnent et ajouter un champ nécessiterai pas mal de modifications.

    Merci

    Citation Envoyé par rinuom99 Voir le message


    pourquoi tu n'ajoute pas un champ dans la table activites pour indiquer si l'activité est confirmée ou non !!

  6. #6
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    C'est une opération sur une fonction de regroupement que tu as besoin.

    Donc ce n'est pas en clause WHERE qu'il faut utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TO_DAYS( NOW())- TO_DAYS( date1 )<=20
    AND activites.date1 <='$datedujour'
    Mais en clause HAVING, ainsi l'opération COUNT() sera appliquée à partir de ce tri.

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT  COUNT( activites.num_activite )
    FROM activites, confirmations
    WHERE activites.num_activite != confirmations.num_activite
    HAVING TO_DAYS( NOW())- TO_DAYS( date1 )<=20
    AND activites.date1 <='$datedujour'

Discussions similaires

  1. Requête SQL
    Par Leludo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/07/2024, 15h41
  2. [SSIS][2k5]requête sql renvoyant l'activité d'un job ssis
    Par cyrano_de_bergerac dans le forum SSIS
    Réponses: 4
    Dernier message: 08/09/2009, 10h21
  3. [ DB2 ] [ AS400] requête sql
    Par zinaif dans le forum DB2
    Réponses: 6
    Dernier message: 23/08/2008, 19h42
  4. Requête SQL d'ajout, suppression du message de confirmation ?
    Par Jeff77 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 24/07/2006, 22h52
  5. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38

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