Partage
  • Partager sur Facebook
  • Partager sur Twitter

[SQL] Requete avec moyenne de temps, DISTINCT

Complexe, besoin d'aide

    8 octobre 2010 à 10:57:09

    Bonjour,
    J'ai à nouveau un petit soucis de requête SQL sous postgress.

    Voici mon soucis :
    J'ai 2 requêtes SQL :
    La première me permet de calculer le temps moyenne d'un patient passe sur un site
    SELECT AVG(duree) as moyenne FROM (
      SELECT max("StatAction"."date") - min("StatAction"."date") as duree
      FROM "stat_sessions" AS "StatSession" 
      LEFT JOIN "stat_actions" AS "StatAction" ON ("StatSession"."id" = "StatAction"."stat_session_id")
      WHERE "StatSession"."stat_site_id" = 70 AND "StatSession"."patient" = 225992
      GROUP BY ("StatSession"."id")
     ) AS tmp_duree
    


    la 2ème requete SQL me permet de connaitre le nombre de fois qu'un patient c'est connecté à un site.
    SELECT DISTINCT ON ("StatSession"."patient") patient, "StatSession"."identifiant" AS "StatSession__identifiant", count("StatSession"."patient"), "StatActionType"."libelle" AS "StatActionType__libelle" 
    FROM "stat_sessions" AS "StatSession" 
    LEFT JOIN stat_actions AS "StatAction" ON ("StatSession"."id" = "StatAction"."stat_session_id") 
    LEFT JOIN stat_action_types AS "StatActionType" ON ("StatActionType"."id" = "StatAction"."stat_action_type_id") 
    WHERE "StatSession"."stat_site_id" = '70' 
    GROUP BY "StatSession"."patient", "StatSession"."identifiant", "StatActionType"."libelle" 
    ORDER BY "StatSession"."patient" DESC LIMIT 20
    


    J'aimerai pouvoir réunir les 2 requêtes SQL pour connaitre pour chaque patient, le nombre de fois qu'il c'est connecté à un site ainsi que la moyenne du temps passé dessus.

    Merci de votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      8 octobre 2010 à 15:59:42

      Pourquoi est-ce que tu encadres tes colonnes, tes tables et tes alias par des guillemets ? Et pourquoi est-ce que tu donnes comme alias à tes tables le même nom (enfin, moins les underscores) ?

      Ceci étant dit, c'est difficile de t'aider parce que tes tables nous sont inconnues. Donne-nous la structure des tables ainsi qu'un jeu d'essai (au format SQL). Apparemment, tu vas devoir faire la jointure de la première requête dans la deuxième, mais je préfère vérifier pour voir s'il n'y a pas une solution plus simple.
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        9 octobre 2010 à 15:09:36

        Tient c'est nouveau ça tu connais le temps de passage des visiteurs !
        C'était il y a 10 ans , maintenant c'est caché dans 99% des navigateurs ...
        • Partager sur Facebook
        • Partager sur Twitter

        [SQL] Requete avec moyenne de temps, DISTINCT

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown