Enterprise Reporting
  • Introduction
  • Understanding reports with clarity (Definitions)
  • Optimizing key performance indicators (via the Groups tab)
    • Dashboard
    • Reporting section
      • Progress report
      • Adoption report
      • Engagement report
      • Content insights
        • XP
        • Courses
        • Projects
        • Tracks
      • Assessments
      • Certifications
      • Time in Learn
      • DataLab
      • Export
    • Skill Matrix
  • Integrating our data into your tools (via Data Connector 2.0)
    • Explore the data model
      • Fact tables
      • Dimension tables
      • Bridge tables
      • Metrics tables
    • Common use cases
    • Sample queries
    • Queries to recreate key reports in the Groups tab
      • Dashboard
        • Members who have earned XP
      • Reporting section
        • Progress report
        • Content insights
        • Assessments
        • Certification Insights
        • Time in Learn
    • Domain Gotchas
    • Getting started with Data Connector 2.0
      • Enable Data Connector 2.0
      • Your credentials
      • Storing your credentials
    • Using Data Connector 2.0
      • Integrating with your BI tools
        • Microsoft Power BI
        • Tableau
        • Looker
        • DataLab
      • Downloading your data
        • S3 Browser (Windows)
        • Cyberduck (Mac or Windows)
        • AWS CLI (Linux)
    • Changelog
    • Migrating from Data Connector 1.0
  • FAQ
  • Data Connector 1.0 - Documentation
    • [Data Connector 1.0] Explore Data Model
      • [Data Connector 1.0] Data Model
      • [Data Connector 1.0] Changelog
      • [Data Connector 1.0] Example queries
    • [Data Connector 1.0] Getting started
      • [Data Connector 1.0] Enabling the Data Connector
      • [Data Connector 1.0] Your Credentials
      • [Data Connector 1.0] Storing your Credentials
    • [Data Connector 1.0] Using the Data Connector
      • [Data Connector 1.0] Analyzing data
        • [Data Connector 1.0] DataLab
        • [Data Connector 1.0] Microsoft Power BI
        • [Data Connector 1.0] Tableau
      • [Data Connector 1.0] Downloading data
        • [Data Connector 1.0] S3 Browser (Windows)
        • [Data Connector 1.0] 3Hub (Mac)
        • [Data Connector 1.0] AWS CLI (Linux)
    • [Data Connector 1.0] Data Connector FAQ
      • [Data Connector 1.0] Deprecating dcdcpy and dcdcr
Powered by GitBook
On this page
  1. Integrating our data into your tools (via Data Connector 2.0)
  2. Queries to recreate key reports in the Groups tab
  3. Reporting section

Assessments

PreviousContent insightsNextCertification Insights

Last updated 2 months ago

To replicate the Assessments Activity table, you can use the following query:

WITH assessment_completions AS (
    SELECT 
      content_id, 
      user_id, 
      assessment_score, 
      occurred_at
    FROM data_connector_1234.fact_learn_events
    WHERE event_name = 'assessment_completed'
),

assessment_completions_best_score AS (
    SELECT 
        user_id,
        content_id,
        max(assessment_score) AS assessment_score
    FROM assessment_completions
    GROUP BY user_id, content_id
),

assessment_completions_first_score AS (
    SELECT
        user_id,
        content_id,
        first_value(assessment_score) 
            OVER(PARTITION BY user_id, content_id 
                ORDER BY occurred_at ASC) AS assessment_first_score
    FROM assessment_completions
),

score_increases AS (
    SELECT
        best_score.content_id,
        coalesce(count(DISTINCT best_score.user_id), 0) AS nb_unique_improved_members
    FROM assessment_completions_best_score AS best_score
    INNER JOIN assessment_completions_first_score AS first_score 
        ON best_score.user_id = first_score.user_id
            AND best_score.content_id = first_score.content_id
    WHERE best_score.assessment_score > first_score.assessment_first_score
    GROUP BY best_score.content_id
),

median_scores AS (
    SELECT 
        content_id,
        approx_percentile(assessment_score, 0.6) AS median_score
    FROM assessment_completions
    GROUP BY content_id
),

metrics_without_medians AS (
    SELECT 
        completions.content_id,
        count(*) AS nb_assessments_completed,
        count(DISTINCT completions.user_id) AS nb_unique_member_completions,
        approx_percentile(completions.assessment_score, 0.5) AS median_score,
        approx_percentile(best_score.assessment_score, 0.5) AS median_best_score
    FROM assessment_completions AS completions
    INNER JOIN assessment_completions_best_score AS best_score 
        ON completions.user_id = best_score.user_id 
            AND completions.content_id = best_score.content_id
    GROUP BY completions.content_id
)

SELECT 
    coalesce(content.content_title, 'Deprecated Assessment') AS assessment,
    coalesce(mwm.nb_assessments_completed, 0) AS completions,
    coalesce(mwm.nb_unique_member_completions, 0) AS members,
    coalesce(sci.nb_unique_improved_members, 0) AS improved_members,
    coalesce(mwm.median_score, 0) AS median_score
FROM metrics_without_medians AS mwm 
LEFT JOIN score_increases AS sci 
    ON mwm.content_id = sci.content_id
LEFT JOIN median_scores AS ms
    ON ms.content_id = mwm.content_id
LEFT JOIN data_connector_1234.dim_content AS content
    ON content.content_id = mwm.content_id 
        AND content.assessment_active = true
ORDER BY completions DESC