Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Filtrering og Udvælgelse af Data med SQL | Arbejde med Data
Databricks Grundlæggende: En Begyndervejledning

Filtrering og Udvælgelse af Data med SQL

Stryg for at vise menuen

Note
Definition

En midlertidig visning er et sessionsafgrænset alias for en DataFrame, der gør det muligt at interagere med dine data ved hjælp af standard SQL-syntaks. Den flytter eller duplikerer ikke dataene; den giver blot et SQL-venligt "vindue" ind i DataFrame'en, som ligger i clusterens hukommelse.

Selvom Python er fremragende til at opbygge komplekse pipelines, foretrækker mange datamedarbejdere læsbarheden og hastigheden ved SQL til filtrering og udvælgelse af data. I Databricks behøver du ikke vælge det ene frem for det andet. Du kan omdanne en Python DataFrame til en midlertidig SQL-tabel (en "view") og straks begynde at forespørge på den.

Oprettelse af en midlertidig visning

Før du kan køre en SQL-forespørgsel mod en DataFrame, skal du give den et navn, som SQL-motoren kan genkende. Dette kan du gøre ved at bruge metoden createOrReplaceTempView.

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

Den "Replace"-del af denne kommando er vigtig: den sikrer, at hvis du kører cellen igen, vil den blot opdatere visningen i stedet for at forårsage en fejl. Denne visning eksisterer kun under din nuværende notebook-session.

Forespørgsler med %sql-magic

Nu hvor visningen er registreret, kan du skifte sprog. Ved at bruge %sql-magic-kommandoen øverst i en ny celle kan du udføre præcis de samme udvælgelser og filtreringer, som du gjorde i Python, men ved hjælp af standard SQL-syntaks.

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

Kraften ved SQL-filtrering

SQL er særligt intuitivt til kompleks filtrering. Du kan bruge IN-operatoren til at filtrere efter flere værdier eller LIKE-operatoren til mønstergenkendelse – opgaver, der ofte er mere omstændelige i Python.

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

Valg og aliasering af kolonner

I SQL er det enkelt at vælge og omdøbe kolonner ved hjælp af nøgleordet AS. Dette er en almindelig praksis for at gøre dine endelige rapportoverskrifter mere professionelle.

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

Hvorfor bruge et midlertidigt view?

Du spørger måske: "Hvorfor ikke bare forespørge tabellen direkte fra kataloget?" Fordelen ved et midlertidigt view er, at det giver dig mulighed for at forespørge et DataFrame, som du allerede delvist har renset eller ændret i Python. Det fungerer som en bro, der gør det muligt at bruge Python til det "tunge arbejde" med data engineering og SQL til den endelige analyse og visualisering.

1. Hvilken Python-metode skal du køre, før du kan bruge %sql til at forespørge en DataFrame?

2. Hvad sker der med en "midlertidig visning", når du afbryder din notesbog fra klyngen eller afslutter din session?

question mark

Hvilken Python-metode skal du køre, før du kan bruge %sql til at forespørge en DataFrame?

Vælg det korrekte svar

question mark

Hvad sker der med en "midlertidig visning", når du afbryder din notesbog fra klyngen eller afslutter din session?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 5

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 4. Kapitel 5
some-alt