3rd Jul 2025 9 Leseminuten SQL-Abfragen, die Sie tatsächlich im echten Leben verwenden werden Agnieszka Kozubek-Krycuń SQL-Grundlagen SQL-Übungen Inhaltsverzeichnis 1. Schauen Sie sich ein Beispiel der Daten an 2. Kennen Sie die Größe Ihrer Tabelle 3. Alle eindeutigen Werte in einer Spalte anzeigen 4. Zählen, wie oft jeder Wert vorkommt 5. Minimal-, Maximal- und Durchschnittswerte ermitteln 6. Zeilen mit WHERE filtern 7. Sortieren Sie Ihre Daten mit ORDER BY 8. Kombinieren von Tabellen mit JOIN 9. Filtern nach einem Datumsbereich Letzter Tipp: Üben Sie mit realistischen Daten Lernen Sie die wichtigsten SQL-Abfragen, auf die sich Datenanalysten, Marketingexperten und Produktteams täglich verlassen - mit einfachen, nachvollziehbaren Beispielen. Wenn man gerade erst mit SQL anfängt, kann man leicht von der Syntax und der Theorie überwältigt werden. Aber die Wahrheit ist: Die meisten Fachleute - egal ob Datenanalysten, Marketingexperten oder Produktmanager - verwenden eine kleine Anzahl von SQL-Abfragen immer wieder, um ihre Arbeit zu erledigen. Sie müssen nicht alles auf einmal lernen. Dieser Artikel führt Sie durch die wichtigsten SQL-Abfragen, die Anfänger bei ihrer Arbeit tatsächlich verwenden. Keine abstrakten Daten oder komplizierte Mathematik - nur klare, einsteigerfreundliche Beispiele, die Sie sofort verstehen und anwenden können. Nehmen wir an, Sie arbeiten mit der Datenbank eines Online-Buchladens. Sie möchten die Tabellen Bestellungen und Kunden analysieren, um alltägliche Geschäftsfragen zu beantworten. Um SQL Schritt für Schritt zu lernen - mit praktischen Übungen und Beispielen aus der Praxis - besuchen Sie unseren Kurs SQL für Anfänger . Hier finden Sie alles, was Sie brauchen, um eine solide Grundlage zu schaffen. Der Kurs umfasst 129 interaktive Übungen, die alle auf praktisches, praxisnahes Lernen ausgerichtet sind. Sie werden von Anfang an echten SQL-Code schreiben, sofortiges Feedback erhalten und das Selbstvertrauen aufbauen, SQL bei Ihrer täglichen Arbeit zu verwenden. Lassen Sie uns mit den Abfragen beginnen! 1. Schauen Sie sich ein Beispiel der Daten an Die erste Abfrage, die Sie in fast jeder Datenbank durchführen werden, ist ein kurzer Blick auf die Daten selbst. Sie wollen sehen, mit welcher Art von Informationen Sie arbeiten. SELECT * FROM orders LIMIT 10; Diese Abfrage wählt alle Spalten aus, zeigt aber nur die ersten 10 Zeilen an. Sie gibt Ihnen einen kurzen Einblick in die Struktur der orders Tabelle - einschließlich Spalten wie order_id, customer_id, order_date und total_amount. Dies ist eine einfache Möglichkeit, sich mit Ihrem Datensatz vertraut zu machen, bevor Sie mit der Analyse beginnen. Es ist wichtig, nicht alle Zeilen aus der Tabelle auszuwählen, insbesondere bei großen Datensätzen, da dies die Datenbank überlasten kann. Die Auswahl von nur 10 oder 20 Zeilen ist ein sicherer Weg, um eine Vorschau der Daten zu erhalten. 2. Kennen Sie die Größe Ihrer Tabelle Die nächste Abfrage, die Sie in der Regel durchführen werden, dient dazu, die Anzahl der Zeilen in einer Tabelle zu ermitteln: SELECT COUNT(*) FROM orders; So erfahren Sie, wie viele Bestellungen Ihr Unternehmen insgesamt hat. Es ist ratsam, diese Abfrage für alle Tabellen durchzuführen, mit denen Sie arbeiten möchten, damit Sie wissen, wie groß jede einzelne Tabelle ist, bevor Sie mit der Analyse beginnen. 3. Alle eindeutigen Werte in einer Spalte anzeigen Als Nächstes sollten Sie alle eindeutigen Werte in einer Spalte überprüfen - insbesondere bei "Wörterbuchspalten" wie Städtenamen, Produktkategorien oder Zahlungsarten. Dies sind Spalten, in denen jeder Wert eine Bezeichnung, einen Typ oder eine Kategorie darstellt, und wenn Sie verstehen, was darin enthalten ist, können Sie bei der Analyse bessere Entscheidungen treffen. Zum Beispiel, um alle verschiedenen Zahlungsmethoden zu sehen, die verwendet werden: SELECT DISTINCT payment_method FROM orders; Mit dem Schlüsselwort DISTINCT werden Duplikate aus den Ergebnissen entfernt. Anstatt den Wert jeder Zeile anzuzeigen, wird jeder eindeutige Wert nur einmal zurückgegeben. Wenn also "credit_card" 5.000 Mal in der Tabelle vorkommt, wird es nur einmal im Ergebnis angezeigt. Dies ist nützlich, wenn Sie dies wünschen: Die vollständige Liste der verfügbaren Optionen in einer Spalte prüfen. Verstehen, wie Werte kategorisiert werden. sich auf das Filtern, Gruppieren oder Bereinigen Ihrer Daten vorbereiten möchten. Sie können DISTINCT mit jeder Spalte verwenden, um schnell die Vielfalt der darin enthaltenen Werte zu erkunden. 4. Zählen, wie oft jeder Wert vorkommt Dies ist eine der am häufigsten verwendeten Abfragen im wirklichen Leben. Sie hilft Ihnen, die Verteilung der Werte in einer Spalte zu sehen - insbesondere in "Wörterbuchspalten" wie payment_method, category oder city. Angenommen, Sie möchten wissen, wie viele Bestellungen mit den einzelnen Zahlungsarten aufgegeben wurden: SELECT payment_method, COUNT(*) AS num_orders FROM orders GROUP BY payment_method; Diese Abfrage gruppiert die Zeilen nach payment_method und zählt dann, wie viele Zeilen (d. h. Bestellungen) in jede Gruppe fallen. Das Ergebnis zeigt jede Zahlungsmethode zusammen mit der Anzahl der Bestellungen, die sie verwendet haben. Verwenden Sie dieses Muster immer dann, wenn Sie Ihre Daten nach Kategorien aufschlüsseln möchten - zum Beispiel, um zu sehen, wie viele Bestellungen aus jeder Stadt kamen oder wie viele Produkte in jede Kategorie fallen. Um die Ergebnisse leichter zu lesen, können Sie sie nach Häufigkeit sortieren (vom höchsten zum niedrigsten Wert): SELECT payment_method, COUNT(*) AS num_orders FROM orders GROUP BY payment_method ORDER BY COUNT(*) DESC; So können Sie schnell erkennen, welche Werte am häufigsten vorkommen. 5. Minimal-, Maximal- und Durchschnittswerte ermitteln Als Nächstes sollten Sie sich den Wertebereich in einer numerischen Spalte ansehen. Dies hilft Ihnen, Dinge wie Auftragsgröße, Preis oder Menge zu verstehen. So können Sie beispielsweise den kleinsten, den größten und den durchschnittlichen Bestellwert ermitteln: SELECT MIN(total_amount) AS smallest_order, MAX(total_amount) AS biggest_order, AVG(total_amount) AS average_order FROM orders; Diese Abfrage verwendet drei Aggregatfunktionen: MIN findet den kleinsten Wert. MAX findet den größten Wert. AVG Berechnet den Durchschnitt. Damit erhalten Sie einen schnellen Überblick über die Streuung der Werte in der Spalte total_amount - nützlich, um Ausreißer zu erkennen oder Schwellenwerte für weitere Analysen festzulegen. Bonus: Mit GROUP BY können Sie den Bereich nach Kategorien aufschlüsseln. So können Sie z. B. den minimalen, maximalen und durchschnittlichen Bestellbetrag nach Zahlungsmethode anzeigen: SELECT payment_method, MIN(total_amount) AS smallest_order, MAX(total_amount) AS biggest_order, AVG(total_amount) AS average_order FROM orders GROUP BY payment_method; So können Sie vergleichen, wie verschiedene Kategorien abschneiden - z. B. welche Zahlungsmethode tendenziell höhere oder niedrigere Bestellbeträge aufweist. 6. Zeilen mit WHERE filtern Manchmal benötigen Sie nicht die gesamte Tabelle, sondern nur die Zeilen, die bestimmte Bedingungen erfüllen. Zum Beispiel, um nur die Bestellungen über 100 $ zu sehen: SELECT * FROM orders WHERE total_amount > 100; Auf diese Weise können Sie sich auf Bestellungen mit hohem Wert konzentrieren - ideal, um Kunden zu finden, die viel Geld ausgeben, oder um potenzielle VIP-Kunden zu identifizieren. Sie können auch mehrere Bedingungen mit AND kombinieren: SELECT * FROM orders WHERE total_amount > 100 AND payment_method = 'credit_card'; Jetzt filtern Sie nach Kunden, die mehr als 100 $ ausgegeben und mit einer Kreditkarte bezahlt haben - vielleicht sind das Ihre wertvollsten Kunden. Das Filtern mit WHERE ist eine der nützlichsten Aufgaben, die Sie in SQL erledigen können. Es hilft Ihnen bei der Beantwortung gezielter Geschäftsfragen, wie z. B.: Wer hat große Einkäufe getätigt? Wer hat eine bestimmte Zahlungsmethode verwendet? Welche Bestellungen erfolgten nach einem bestimmten Datum? Sie können auch OR, IN, NOT und andere Operatoren verwenden, um Ihre Filter noch weiter anzupassen - aber WHERE ist der Ausgangspunkt für fast jeden Daten-Tiefgang. 7. Sortieren Sie Ihre Daten mit ORDER BY Sie möchten die Bestellungen mit dem höchsten Wert zuerst sehen? Sie können Ihre Ergebnisse mit ORDER BY sortieren und die Richtung mit DESC (für absteigend) oder ASC (für aufsteigend) steuern: SELECT * FROM orders ORDER BY total_amount DESC LIMIT 10; Dies zeigt die 10 größten Bestellungen, die jemals aufgegeben wurden - sortiert vom höchsten zum niedrigsten Wert nach total_amount. Diese Art von Abfrage eignet sich hervorragend für alle Arten von Sortieraufgaben, wie z. B.: Suche nach den obersten oder untersten Ergebnissen anhand einer beliebigen Spalte. Sortieren von Artikeln nach Umsatz, Menge oder Leistung. Erkennen von Trends durch Sortieren von Daten im Zeitverlauf. Hervorheben von Ausreißern oder ungewöhnlichen Werten. Wenn Sie stattdessen die kleinsten Bestellungen sehen möchten, ändern Sie einfach DESC in ASC: … ORDER BY total_amount ASC Profi-Tipp: Sie können nach jeder Spalte sortieren - nicht nur nach Zahlen. Wenn Sie zum Beispiel nach order_date sortieren, werden je nach Sortierrichtung die neuesten oder die ältesten Bestellungen angezeigt. 8. Kombinieren von Tabellen mit JOIN Eine der häufigsten Abfragen, die Sie im wirklichen Leben verwenden werden, ist ein JOIN. Das liegt daran, dass nützliche Informationen oft über mehrere Tabellen verteilt sind. Um ein vollständiges Bild zu erhalten, müssen Sie diese ständig kombinieren. In der Tabelle "Bestellungen" wird zum Beispiel nur die Adresse customer_id gespeichert, nicht aber der tatsächliche Name des Kunden. Um jede Bestellung zusammen mit dem Namen der Person, die sie aufgegeben hat, zu sehen, müssen Sie sie mit der Tabelle customers verbinden: SELECT o.order_id, c.customer_name, o.total_amount, o.order_date FROM orders o JOIN customers c ON o.customer_id = c.customer_id; Diese Abfrage verbindet die beiden Tabellen über die Spalte customer_id, die in beiden vorhanden ist. Wir verwenden Tabellen-Aliase (o für orders, c für customers), um die Abfrage leichter lesbar zu machen. Das Ergebnis? Ein viel nützlicherer Datensatz. Jetzt können Sie sehen, wer die einzelnen Bestellungen aufgegeben hat, wie viel er ausgegeben hat und wann - was für Kundenanalysen, Berichte und Geschäftseinblicke unerlässlich ist. JOINs gibt es überall. Wann immer Sie mit echten Datenbanken arbeiten, werden Sie Tabellen miteinander verknüpfen - egal ob es sich um Bestellungen und Kunden, Produkte und Kategorien oder Benutzer und Aktivitätsprotokolle handelt. 9. Filtern nach einem Datumsbereich Eine der häufigsten Aufgaben in der Praxis ist das Filtern von Daten für einen bestimmten Zeitraum, z. B. die Anzeige aller Bestellungen aus einem bestimmten Monat oder Quartal. Nehmen wir an, Sie möchten alle im Mai 2024 aufgegebenen Bestellungen anzeigen: SELECT * FROM orders WHERE order_date >= '2025-05-01' AND order_date < '2025-06-01'; Dies gibt alle Bestellungen zurück, bei denen order_date zwischen dem 1. Mai und dem 31. Mai 2025 liegt - einschließlich des 1. Mai und bis zum 1. Juni (aber nicht einschließlich). Das hier verwendete Datumsformat ist YYYY-MM-DD: YYYY = 4-stelliges Jahr (z.B. 2024) MM = 2-stelliger Monat (z. B. 05 für Mai) DD = 2-stelliger Tag (z. B. 01 für den 1. des Monats) Die Verwendung von < '2024-06-01' anstelle von <= '2024-05-31' ist sicherer, wenn Ihre Spalte Zeitwerte enthält, wie z. B. '2024-05-31 15:42:00', weil dadurch vermieden wird, dass versehentlich Daten des letzten Tages ausgeschlossen werden. Letzter Tipp: Üben Sie mit realistischen Daten Der beste Weg, sich diese Abfragen einzuprägen, ist, sie zu benutzen. Üben Sie mit Daten, die für Sie sinnvoll sind - wie Kundenbestellungen, Blogverkehr oder App-Nutzung. SQL muss nicht überwältigend sein. Sie brauchen nicht Hunderte von Befehlen, um echte Arbeit zu leisten, sondern nur eine kleine Anzahl praktischer Abfragen, auf die Sie sich jeden Tag verlassen können. Um echtes Selbstvertrauen und ein gutes Muskelgedächtnis aufzubauen, sollten Sie den KursSQL für Anfänger unter LearnSQL.de besuchen. Er bietet Ihnen praktische Übungen mit realistischen Datensätzen und 129 interaktiven Übungen - so lernen Sie, indem Sie tatsächlich SQL schreiben, anstatt nur darüber zu lesen. Beginnen Sie mit den oben genannten Grundlagen - und Sie werden überrascht sein, wie weit Sie damit kommen können. Tags: SQL-Grundlagen SQL-Übungen