
SQL - Window Functions
ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, NTILE, SUM OVER, PARTITION BY, frames
1Qu'est-ce qu'une window function en SQL ?
Qu'est-ce qu'une window function en SQL ?
Réponse
Une window function effectue un calcul sur un ensemble de lignes liées à la ligne courante, sans regrouper les résultats en une seule ligne de sortie. Contrairement à GROUP BY qui réduit le nombre de lignes, la window function conserve toutes les lignes du résultat tout en ajoutant une colonne calculée. La clause OVER() définit la fenêtre sur laquelle le calcul est effectué.
2Quelle clause est obligatoire pour définir une window function ?
Quelle clause est obligatoire pour définir une window function ?
Réponse
La clause OVER() est obligatoire pour toute window function. Elle indique au moteur SQL que la fonction doit être exécutée comme une fonction de fenêtre plutôt que comme une fonction d'agrégation classique. OVER() peut contenir PARTITION BY, ORDER BY et une spécification de frame, mais elle peut aussi rester vide pour appliquer le calcul sur l'ensemble du résultat.
3Quel est le rôle de PARTITION BY dans une window function ?
Quel est le rôle de PARTITION BY dans une window function ?
Réponse
PARTITION BY divise l'ensemble des lignes en groupes (partitions) indépendants, et la window function est appliquée séparément sur chaque partition. Contrairement à GROUP BY, PARTITION BY ne réduit pas le nombre de lignes dans le résultat. Par exemple, SUM(sales) OVER(PARTITION BY region) calcule le total des ventes par région tout en conservant chaque ligne individuelle.
Quelle est la différence principale entre GROUP BY et PARTITION BY ?
Que retourne ROW_NUMBER() OVER(ORDER BY salary DESC) ?
+17 questions d'entretien
Autres sujets d'entretien Data Analytics
Google Sheets - Les fondamentaux
Google Sheets - Formules avancées
SQL - Les fondamentaux
SQL - Agrégations et groupements
SQL - Jointures
BigQuery - Fondamentaux
Data Cleaning - Nettoyage des données
KPIs et métriques business
Statistiques descriptives
Zapier et automatisation No-Code
Principes de data visualisation
Python & Pandas - Fondamentaux
Google Sheets - Dashboards automatisés
SQL - Sous-requêtes et CTEs
BigQuery - Fonctionnalités avancées
Data Modeling
Analyse de funnels et conversion
Analyse de cohortes et rétention
Google Tag Manager et tracking
APIs et webhooks
dbt - Fondamentaux
AB Testing et statistiques appliquées
Looker Studio (Google Data Studio)
Power BI - Fondamentaux
SQL - Requêtes analytiques avancées
dbt - Fonctionnalités avancées
Power BI - DAX et dashboards avancés
Python Analytics - Analyse avancée et ML
Maîtrise Data Analytics pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement