Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Filtrage et Sélection de Données avec SQL | Travail Avec les Données
Fondamentaux de Databricks : Guide du Débutant

Filtrage et Sélection de Données avec SQL

Glissez pour afficher le menu

Note
Définition

Une vue temporaire est un alias limité à la session pour un DataFrame, permettant d'interagir avec vos données en utilisant la syntaxe SQL standard. Elle ne déplace ni ne duplique les données ; elle offre simplement une « fenêtre » compatible SQL sur le DataFrame présent en mémoire du cluster.

Bien que Python soit excellent pour construire des pipelines complexes, de nombreux professionnels des données privilégient la lisibilité et la rapidité du SQL pour filtrer et sélectionner des données. Dans Databricks, il n'est pas nécessaire de choisir entre les deux. Vous pouvez transformer un DataFrame Python en une table SQL temporaire (une « vue ») et commencer immédiatement à l'interroger.

Création d'une vue temporaire

Avant de pouvoir exécuter une requête SQL sur un DataFrame, vous devez lui attribuer un nom que le moteur SQL peut reconnaître. Cela s'effectue à l'aide de la méthode createOrReplaceTempView.

# Create a SQL view named 'diamond_view' from our existing DataFrame
df.createOrReplaceTempView("diamond_view")

La partie « Replace » de cette commande est importante : elle garantit que si vous exécutez à nouveau la cellule, la vue sera simplement mise à jour au lieu de provoquer une erreur. Cette vue existera uniquement pendant la durée de votre session actuelle du notebook.

Interrogation avec la commande magique %sql

Maintenant que la vue est enregistrée, il est possible de changer de langage. En utilisant la commande magique %sql au début d’une nouvelle cellule, il est possible d’effectuer exactement les mêmes sélections et filtres qu’en Python, mais en utilisant la syntaxe SQL standard.

%sql
SELECT carat, cut, depth
FROM diamond_view
WHERE price > 500

La puissance du filtrage SQL

SQL est particulièrement intuitif pour le filtrage complexe. L'opérateur IN permet de filtrer sur plusieurs valeurs, tandis que l'opérateur LIKE sert à effectuer des recherches par motif : des tâches souvent plus verbeuses en Python.

%sql
SELECT * FROM diamond_view
WHERE cut IN ('Good', 'Premium')
  AND clarity LIKE '%V%'

Sélection et alias des colonnes

En SQL, la sélection et le renommage des colonnes se font facilement à l'aide du mot-clé AS. Il s'agit d'une pratique courante pour rendre les en-têtes de vos rapports finaux plus professionnels.

%sql
SELECT 
  carat, 
  cut AS Diamond_Quality, 
  price AS Selling_Price
FROM diamond_view

Pourquoi utiliser une vue temporaire ?

Vous pourriez vous demander : « Pourquoi ne pas simplement interroger la table directement depuis le catalogue ? » L'avantage d'une vue temporaire est qu'elle permet d'interroger un DataFrame que vous avez déjà partiellement nettoyé ou modifié en Python. Elle sert de passerelle, permettant d'utiliser Python pour le traitement intensif des données et SQL pour l'analyse finale et la visualisation.

1. Quelle méthode Python devez-vous exécuter avant de pouvoir utiliser %sql pour interroger un DataFrame ?

2. Que se passe-t-il pour une « vue temporaire » lorsque vous détachez votre notebook du cluster ou terminez votre session ?

question mark

Quelle méthode Python devez-vous exécuter avant de pouvoir utiliser %sql pour interroger un DataFrame ?

Sélectionnez la réponse correcte

question mark

Que se passe-t-il pour une « vue temporaire » lorsque vous détachez votre notebook du cluster ou terminez votre session ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 4. Chapitre 5
some-alt