📚
Lerndokumentationen
Datenbanken
Datenbanken
  • Willkommen
  • Grundlagen
    • SQL vs. NoSQL
    • NoSQL-Familien
    • CAP-Theorem
    • Vorgehen beim Erstellen
    • ACID - BASE
    • Indizes
  • SQL
    • Struktur
      • Datenbanken und Tabellen
        • Datentypen
        • Erstellen
        • Bearbeiten
        • Löschen
        • Constraints
          • NOT NULL
          • UNIQUE
          • Primärschlüssel
          • Fremdschlüssel
          • CHECK
          • DEFAULT
      • Daten
        • Einfügen
        • Aktualisieren
        • Löschen
    • Abfragen
      • Auswählen
      • Filtern
      • Operatoren
      • Reihenfolge
      • JOINS
      • Aggregatsfunktionen
        • Gruppieren
        • Filtern
      • Subqueries
    • Transaktionen
    • Datenschutz und Berechtigungen
      • Benutzerverwaltung
      • Rechte
    • Optimierung
  • MongoDB
    • Was ist MongoDB?
    • Struktur
      • Datenbanken und Collections
      • Daten
    • Abfragen
    • Indexing
    • Security
      • Authentifizierung und Autorisierung
      • Auditing
    • Backups
Bereitgestellt von GitBook
Auf dieser Seite
  1. SQL
  2. Abfragen

Subqueries

Unterabfragen sind einfach gesagt verschachtelte Queries. Bei Subqueries gibt es keine Syntax, wie beispielsweise bei Joins, aber es gibt gewisse Regeln, welche in den Beispielen visualisiert werden.

Beispiele

SELECT Name FROM Cities
WHERE Id IN (
    SELECT CityId FROM Customers
    WHERE FirstName LIKE 'F%'
);
SELECT AVG(NumOfIngredients) FROM (
    SELECT COUNT(*) AS NumOfIngredients FROM PizzaIngredients
    GROUP BY PizzaId
) T;
SELECT Street, City.ZipCode, City.Name FROM Customers
JOIN City ON Customers.CityId = City.Id
WHERE Customers.Id IN (
    SELECT CustomerId FROM Orders
    WHERE Id = 3
);
SELECT Name FROM Ingredients
WHERE Id IN (
    SELECT IngredientId FROM PizzaIngredients
    WHERE PizzaId IN (
        SELECT Id FROM Pizzas
        WHERE Price = (
            SELECT MAX(Price) FROM Pizzas
        )
    )
);
SELECT Name FROM Ingredients
WHERE Id IN (
    SELECT IngredientId
    FROM (SELECT IngredientId, COUNT(*) as Count
          FROM PizzaIngredients GROUP BY IngredientId) T
    WHERE Count = (
        SELECT MAX(Count)
        FROM (SELECT IngredientId, COUNT(*) as Count
              FROM PizzaIngredients GROUP BY IngredientId) TT
    )
);
VorherigeFilternNächsteTransaktionen

Zuletzt aktualisiert vor 2 Monaten