En résumé !

Manipulation de données dans Snowflake

Jake Roach

Field Data Engineer

Manipulation des données dans Snowflake

$$

      Instructions CASE

                Manipuler et transformer les données selon des conditions.

      Sous-requêtes

                Réutiliser le résultat d'une requête dans une autre.

      Expressions de table communes

                Définir un jeu de résultats temporaire pour la requête principale.

Manipulation de données dans Snowflake

Logique conditionnelle

SELECT
    todays_date,
    temperature,
    status,
    CASE
        WHEN temperature > 70 AND status NOT IN ('Rain', 'Wind') THEN 'Beach'
        WHEN temperature BETWEEN 45 AND 70 AND status = 'Sun' THEN 'Sports'
        WHEN temperature <= 32 OR status = 'Snow' THEN 'Skiing'
        ELSE 'Stay In'
    END AS activity
FROM weather;

La logique conditionnelle peut être combinée à des fonctions d'agrégation.

Manipulation de données dans Snowflake

Sous-requêtes

Processus logique pour manipuler les données de façon plus lisible et modulaire grâce aux sous-requêtes

SELECT
    month_num,
    AVG(differential) AS avg_differential
    MIN(differential) AS most_differential
FROM (
    SELECT
        month_num,
        windchill - temperature AS differential
    FROM weather
    WHERE 
        season = 'Winter' AND
        temperature < 32
)
GROUP BY month_num;
Manipulation de données dans Snowflake

Expressions de table communes

WITH at_risk AS (
    SELECT
        student_id
        course_name,
        teacher_name,
        grade
    FROM student_courses
    WHERE grade < 70 AND is_required
)

SELECT
    students.student_name,
    at_risk.*
FROM at_risk
JOIN students ON at_risk.student_id = students.id;

Les Common Table Expressions (CTE) stockent temporairement les résultats d'une requête pour être réutilisés par une autre

$$

  • Structurer des requêtes plus lisibles et modulaires
  • Définir et utiliser plusieurs CTE
Manipulation de données dans Snowflake

Passons à la pratique !

Manipulation de données dans Snowflake

Preparing Video For Download...