Ceci est une version SQL du rapport de tableau de bord pour les meilleurs référents
Ce rapport montrera les meilleurs utilisateurs qui ont généré le plus de clics de liens entrants vers des publications dans une plage de dates spécifiée.
Ce rapport montre non seulement le nombre total de clics reçus par chaque utilisateur, mais aussi le nombre de sujets distincts sur lesquels ces clics sont répartis. Cela peut aider à comprendre quels utilisateurs génèrent du trafic vers le forum à partir de sources externes et engagent les audiences sur plusieurs discussions.
--[params]
-- date :start_date
-- date :end_date
SELECT
il.user_id,
COUNT(*) Clicks,
COUNT(DISTINCT p.topic_id) Topics
FROM incoming_links il
INNER JOIN posts p ON p.id = il.post_id
WHERE il.created_at::date BETWEEN :start_date AND :end_date
AND il.user_id > 0
GROUP BY il.user_id
ORDER BY 2 DESC
Explication de la requête SQL
La requête SQL utilisée pour ce rapport effectue les actions suivantes :
- Filtre les enregistrements de liens entrants (
incoming_links) pour inclure uniquement ceux créés dans la plage de dates spécifiée (:start_dateà:end_date). - Garantit que les liens entrants sont associés à des utilisateurs valides (en excluant les utilisateurs système ou anonymes avec
user_id > 0). - Joint la table
incoming_linksavec la tablepostspour associer chaque clic de lien au sujet correspondant. - Regroupe les résultats par
user_idpour agréger les données par utilisateur. - Compte le nombre total de clics de liens entrants (
Clicks) et le nombre de sujets distincts (Topics) pour chaque utilisateur. - Trie les résultats par le nombre total de clics en ordre décroissant pour identifier les meilleurs contributeurs.
Paramètres
:start_date: le début de la plage de dates pour laquelle générer le rapport.:end_date: la fin de la plage de dates pour laquelle générer le rapport.
Les deux paramètres de date acceptent le format AAAA-MM-JJ.
Exemple de résultats
| Utilisateur | Clics | Sujets |
|---|---|---|
| username_1 | 5241 | 97 |
| username_2 | 1256 | 14 |
| username_3 | 1242 | 12 |
| … | … | … |