Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

Utilisateurs ayant proposé le plus grand nombre de propositions ayant été validées :
SELECT COUNT(id_commentaire) as total_propositions_validees, utilisateur_nom, utilisateur_prenom, id_utilisateur 
        FROM `del_commentaire` dc 
        INNER JOIN del_utilisateur du 
        ON du.id_utilisateur = dc.ce_utilisateur 
WHERE proposition_retenue = 1 
GROUP BY ce_utilisateur 
ORDER BY total_propositions_validees DESC


Utilisateurs ayant proposé le plus grand nombre de propositions ayant été validées qui n'étaient pas la proposition initiale:
SELECT COUNT(id_commentaire) as total_propositions_validees, utilisateur_nom, utilisateur_prenom, id_utilisateur 
        FROM `del_commentaire` dc 
        INNER JOIN del_utilisateur du 
        ON du.id_utilisateur = dc.ce_utilisateur 
WHERE proposition_retenue = 1 
AND proposition_initiale = 0 
GROUP BY ce_utilisateur 
ORDER BY total_propositions_validees DESC


Utilisateurs ayant proposé le plus grand nombre de propositions ayant été validées qui étaient la proposition initiale:
SELECT COUNT(id_commentaire) as total_propositions_validees, utilisateur_nom, utilisateur_prenom, id_utilisateur 
        FROM `del_commentaire` dc 
        INNER JOIN del_utilisateur du 
                ON du.id_utilisateur = dc.ce_utilisateur 
WHERE proposition_retenue = 1 
AND proposition_initiale = 1 
GROUP BY ce_utilisateur 
ORDER BY total_propositions_validees DESC

Utilisateurs ayant déposé le plus grand nombre de commentaires:
SELECT COUNT(id_commentaire) as total_commentaires, utilisateur_nom, utilisateur_prenom, id_utilisateur 
        FROM `del_commentaire` dc 
        INNER JOIN del_utilisateur du 
                ON du.id_utilisateur = dc.ce_utilisateur 
WHERE nom_sel IS NULL 
GROUP BY ce_utilisateur 
ORDER BY total_commentaires DESC

Utilisateurs ayant voté pour le plus grand nombre de propositions retenues:
SELECT COUNT(dcv.ce_proposition) as total_votes_propositions_validees, du.nom, du.prenom, dcv.ce_utilisateur 
        FROM del_commentaire_vote dcv 
        INNER JOIN del_commentaire dc 
                ON dcv.ce_proposition = dc.id_commentaire 
                AND valeur = 1 
                AND dc.proposition_retenue = 1 
        INNER JOIN del_utilisateur du 
                ON du.id_utilisateur = dcv.ce_utilisateur 
GROUP BY dcv.ce_utilisateur 
ORDER BY total_votes_propositions_validees DESC


Observations anonymes ayant des proposition votées positivement (donc potentiellement validables)
SELECT id_commentaire, ce_observation, 
        SUM(CASE 
                WHEN valeur = 1 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' != 0 THEN 3
                WHEN valeur = 0 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' != 0 THEN -3
                WHEN valeur = 1 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' = 0 THEN 1
                WHEN valeur = 0 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' != 0 THEN -1
        END
        ) as score 
FROM del_commentaire dc 
INNER JOIN del_commentaire_vote dcv 
    ON dc.id_commentaire = dcv.ce_proposition 
WHERE dc.ce_observation NOT IN 
  (SELECT ce_observation FROM del_commentaire WHERE proposition_retenue = 1) 
  AND dc.ce_observation IN 
  (SELECT id_observation FROM del_observation WHERE ce_utilisateur = 0)
  AND dc.nom_sel IS NOT NULL
GROUP BY dcv.ce_proposition
ORDER BY `score`  DESC