Visualizzazioni per sottocategoria

Visualizzazioni per sottocategoria

Un’analisi più dettagliata delle visualizzazioni per argomento, senza tuttavia sommarle. Le voci con la sottocategoria “(none)” si riferiscono agli argomenti posizionati direttamente nelle categorie di primo livello.

SELECT 
    topcat AS "Categoria", 
    subcat AS "Sottocategoria", 
    SUM(views) AS "Visualizzazioni sottocategoria"

FROM (

    /* Visualizzazioni degli argomenti nelle sottocategorie. */
    SELECT
        topcat.name AS topcat, subcat.name AS subcat, SUM(topics.views) AS views
    FROM topics
        INNER JOIN categories subcat ON topics.category_id = subcat.id
        INNER JOIN categories topcat ON subcat.parent_category_id = topcat.id
    GROUP BY topcat.name, subcat.name
    
    UNION

    /* Visualizzazioni degli argomenti nelle categorie di primo livello (escluse le sottocategorie). */
    SELECT
        topcat.name AS topcat, '(none)', SUM(topics.views) AS views
    FROM topics 
        INNER JOIN categories topcat ON topics.category_id = topcat.id
    WHERE topcat.parent_category_id IS NULL
    GROUP BY topcat.name

) AS views_by_cat

GROUP BY topcat, subcat

/* Ordina l'output per categoria o per visualizzazioni. Abilita una di queste opzioni: */
/* ORDER BY topcat, subcat */
ORDER BY "Visualizzazioni sottocategoria" DESC
7 Mi Piace