Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Filtern und Auswählen von Daten mit SQL | Working With Data
Databricks-Grundlagen: Ein Leitfaden für Einsteiger

Filtern und Auswählen von Daten mit SQL

Swipe um das Menü anzuzeigen

Note
Definition

Eine Temporary View ist ein sitzungsgebundener Alias für ein DataFrame, der es ermöglicht, mit den Daten über standardisierte SQL-Syntax zu interagieren. Die Daten werden dabei weder verschoben noch dupliziert; es handelt sich lediglich um ein SQL-freundliches „Fenster“ auf das DataFrame, das sich im Arbeitsspeicher des Clusters befindet.

Obwohl Python hervorragend für den Aufbau komplexer Pipelines geeignet ist, bevorzugen viele Datenprofis die Übersichtlichkeit und Geschwindigkeit von SQL beim Filtern und Auswählen von Daten. In Databricks muss keine Entscheidung zwischen beiden Ansätzen getroffen werden. Ein Python DataFrame kann in eine temporäre SQL-Tabelle (eine „View“) umgewandelt und sofort abgefragt werden.

Erstellen einer Temporary View

Bevor eine SQL-Abfrage auf ein DataFrame ausgeführt werden kann, muss diesem ein Name zugewiesen werden, den die SQL-Engine erkennen kann. Dies geschieht mit der Methode createOrReplaceTempView.

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

Der "Replace"-Teil dieses Befehls ist wichtig: Er stellt sicher, dass beim erneuten Ausführen der Zelle die Ansicht einfach aktualisiert wird, anstatt einen Fehler zu verursachen. Diese Ansicht existiert nur für die Dauer der aktuellen Notebook-Sitzung.

Abfragen mit dem %sql-Magic

Nachdem die Ansicht registriert wurde, kann die Sprache gewechselt werden. Mit dem %sql-Magic-Befehl am Anfang einer neuen Zelle können dieselben Selektionen und Filter wie in Python durchgeführt werden, jedoch unter Verwendung der standardmäßigen SQL-Syntax.

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

Die Leistungsfähigkeit von SQL-Filtern

SQL ist besonders intuitiv für komplexe Filtervorgänge. Mit dem Operator IN können mehrere Werte gefiltert werden, während der Operator LIKE für die Mustersuche verwendet wird – Aufgaben, die in Python oft umständlicher sind.

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

Auswählen und Umbenennen von Spalten

In SQL ist das Auswählen und Umbenennen von Spalten mit dem Schlüsselwort AS unkompliziert. Dies ist eine gängige Praxis, um die Überschriften im Abschlussbericht professioneller zu gestalten.

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

Warum eine temporäre Ansicht verwenden?

Vielleicht fragen Sie sich: "Warum nicht einfach die Tabelle direkt aus dem Katalog abfragen?" Der Vorteil einer temporären Ansicht besteht darin, dass Sie ein DataFrame abfragen können, das Sie bereits teilweise in Python bereinigt oder modifiziert haben. Sie dient als Brücke und ermöglicht es, Python für die aufwendigen Datenverarbeitungsschritte und SQL für die abschließende Analyse und Visualisierung zu nutzen.

1. Welche Python-Methode müssen Sie ausführen, bevor Sie mit %sql ein DataFrame abfragen können?

2. Was passiert mit einer "Temporary View", nachdem Sie Ihr Notebook vom Cluster getrennt oder Ihre Sitzung beendet haben?

question mark

Welche Python-Methode müssen Sie ausführen, bevor Sie mit %sql ein DataFrame abfragen können?

Wählen Sie die richtige Antwort aus

question mark

Was passiert mit einer "Temporary View", nachdem Sie Ihr Notebook vom Cluster getrennt oder Ihre Sitzung beendet haben?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 5

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 4. Kapitel 5
some-alt