Introduction à la modélisation des données dans Snowflake
Nuno Rocha
Director of Engineering



ALTER TABLE classes
ADD FOREIGN KEY (school_id) REFERENCES schools(school_id);


CREATE OR REPLACE TABLE enrollments ( -- Créer une nouvelle entité avec un identifiant unique enrollment_id NUMBER(10,0) PRIMARY KEY-- Ajouter les attributs de l'entité year NUMBER(4,0), semester VARCHAR(255)-- Ajouter des relations vers d'autres entités FOREIGN KEY (student_id) REFERENCES students(student_id), FOREIGN KEY (class_id) REFERENCES classes(class_id));


SELECT students.name
FROM students;

SELECT students.name
FROM students
JOIN enrollments
ON students.student_id = enrollments.student_id;

SELECT students.name
FROM students
JOIN enrollments
ON students.student_id = enrollments.student_id
WHERE enrollments.year = '2023';

SELECT students.name,
classes.class_name
FROM students
JOIN enrollments
ON students.student_id = enrollments.student_id
JOIN classes
ON enrollments.class_id = classes.class_id
WHERE enrollments.year = '2023';

SELECT students.name,
classes.class_name
FROM students
JOIN enrollments
ON students.student_id = enrollments.student_id
JOIN classes
ON enrollments.class_id = classes.class_id
JOIN schools
ON classes.department_id = schools.school_id
WHERE enrollments.year = '2023'
AND schools.school_name = 'Science';
JOIN ON : Clause SQL pour combiner des lignes de tables, basée ON une colonne liée.
SELECT FROM : Commande SQL pour récupérer des colonnes d'une table.JOIN ON : Clause SQL pour combiner des lignes de tables, basée ON une colonne liée.WHERE : Clause SQL pour filtrer les enregistrements selon une condition.AND : Opérateur logique avec WHERE pour combiner plusieurs conditions.-- Interroger des données issues d'entités jointes avec des conditions précises
SELECT column_name
FROM table_name
JOIN other_table ON table_name.FK = other_table.PK
WHERE column_name condition value
AND column_name condition value;
Introduction à la modélisation des données dans Snowflake