Heim > Datenbank > MySQL-Tutorial > Grundlegende SQL-Fragen, die jeder Entwickler beherrschen sollte

Grundlegende SQL-Fragen, die jeder Entwickler beherrschen sollte

Barbara Streisand
Freigeben: 2024-12-24 03:17:15
Original
846 Leute haben es durchsucht

Essential SQL Questions Every Developer Should Master

SQL beherrschen mit 100 grundlegenden Fragen und Beispielen

SQL (Structured Query Language) ist der Eckpfeiler der Datenbankverwaltung und -manipulation. In diesem Leitfaden werden 100 praktische und theoretische SQL-Fragen in verschiedenen Kategorien untersucht, um Ihnen dabei zu helfen, Ihre Datenbankkenntnisse zu verbessern.


1. Grundlegende Fragen zu SQL-Abfragen

  1. Schreiben Sie eine Abfrage, um alle Datensätze aus einer Tabelle abzurufen.
   SELECT * FROM table_name;
Nach dem Login kopieren
Nach dem Login kopieren

Diese Abfrage ruft jeden Datensatz aus der angegebenen Tabelle ab.

  1. Schreiben Sie eine Abfrage, um das zweithöchste Gehalt in einer Tabelle zu finden.
   SELECT MAX(salary) AS second_highest_salary  
   FROM employees  
   WHERE salary < (SELECT MAX(salary) FROM employees);
Nach dem Login kopieren
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um Mitarbeiter abzurufen, deren Namen mit „A“ beginnen.
   SELECT * FROM employees WHERE name LIKE 'A%';
Nach dem Login kopieren
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um den Gesamtumsatz gruppiert nach Region zu berechnen.
   SELECT region, SUM(sales) AS total_sales  
   FROM sales_data  
   GROUP BY region;
Nach dem Login kopieren
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um alle Datensätze abzurufen, deren Spaltenwert NULL ist.
   SELECT * FROM table_name WHERE column_name IS NULL;
Nach dem Login kopieren
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um doppelte Zeilen aus einer Tabelle zu entfernen.
   DELETE FROM table_name  
   WHERE id NOT IN (SELECT MIN(id) FROM table_name GROUP BY column_name);
Nach dem Login kopieren
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um Datensätze in absteigender Reihenfolge anzuzeigen.
   SELECT * FROM table_name ORDER BY column_name DESC;
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um die Anzahl der Zeilen in einer Tabelle zu zählen.
   SELECT COUNT(*) FROM table_name;
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um zwei Tabellen zu verbinden.
   SELECT employees.name, departments.department_name  
   FROM employees  
   JOIN departments  
   ON employees.department_id = departments.id;
Nach dem Login kopieren
  1. Schreiben Sie eine Abfrage, um die ersten drei Zeilen aus einer Tabelle abzurufen.

    SELECT * FROM table_name LIMIT 3;
    
    Nach dem Login kopieren

2. Fragen zur SQL-Leistung

  1. Was ist Abfrageoptimierung?

    Bei der Abfrageoptimierung wird eine Abfrage geändert, um deren Ausführungszeit und Effizienz zu verbessern.

  2. Wie können Sie die Leistung einer SQL-Abfrage verbessern?

    • Verwenden Sie Indizes.
    • Vermeiden Sie SELECT *.
    • Joins optimieren.
    • Verwenden Sie geeignete Datentypen.
    • Analysieren Sie den Ausführungsplan.
  3. Was ist der Zweck der Indizierung?

    Die Indizierung verbessert die Geschwindigkeit von Datenabrufvorgängen für eine Datenbanktabelle.

  4. Was sind die Nachteile der Indizierung?

    • Erhöhter Speicherbedarf.
    • Langsamere Datenänderungsvorgänge wie INSERT und DELETE.
  5. Wie analysiert man den Ausführungsplan einer Abfrage?

    Verwenden Sie das Schlüsselwort EXPLAIN, um den Ausführungsplan anzuzeigen:

    EXPLAIN SELECT * FROM table_name;
    
    Nach dem Login kopieren
  6. Was ist Abfrage-Caching?

    Beim Abfrage-Caching werden die Ergebnisse von Abfragen zur Wiederverwendung gespeichert, wodurch die Rechenzeit verkürzt wird.

  7. Was ist Sharding in Datenbanken?

    Sharding unterteilt eine Datenbank in kleinere, schnellere und besser verwaltbare Teile, sogenannte Shards.

  8. Erklären Sie den Unterschied zwischen horizontaler und vertikaler Skalierung.

    • Durch die horizontale Skalierung werden mehr Maschinen hinzugefügt, um mehr Daten zu verarbeiten.
    • Durch die vertikale Skalierung werden einer einzelnen Maschine Ressourcen (CPU, RAM) hinzugefügt.
  9. Wie trägt die Partitionierung zur Datenbankleistung bei?

    Durch die Partitionierung wird eine große Tabelle in kleinere, besser verwaltbare Teile unterteilt, wodurch die Abfrageleistung verbessert wird.

  10. Was ist Datenbankreplikation?

    Bei der Replikation werden Datenbankkopien auf mehreren Servern kopiert und verwaltet, um Zuverlässigkeit und Redundanz zu gewährleisten.


3. Fragen zu SQL-Funktionen

  1. Was sind Aggregatfunktionen in SQL?

    Aggregatfunktionen führen Berechnungen für mehrere Datenzeilen durch: SUM, AVG, COUNT usw.

  2. Erklären Sie den Unterschied zwischen COUNT, SUM und AVG.

    • COUNT: Zählt die Anzahl der Zeilen.
    • SUM: Fügt Werte in einer Spalte hinzu.
    • AVG: Berechnet den Durchschnitt.
  3. Wie funktioniert die ROUND-Funktion in SQL?

       SELECT * FROM table_name;
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  4. Wofür wird die LENGTH-Funktion verwendet?

    Es berechnet die Anzahl der Zeichen in einer Zeichenfolge:

       SELECT MAX(salary) AS second_highest_salary  
       FROM employees  
       WHERE salary < (SELECT MAX(salary) FROM employees);
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  5. Erklären Sie die Verwendung der CASE-Anweisung in SQL.

       SELECT * FROM employees WHERE name LIKE 'A%';
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  6. Was ist der Unterschied zwischen COALESCE und ISNULL?

    • COALESCE: Gibt den ersten Nicht-Null-Wert aus einer Liste zurück.
    • ISNULL: Prüft auf Null und ersetzt durch einen angegebenen Wert.
  7. Wie verwendet man String-Funktionen wie UPPER und LOWER?

       SELECT region, SUM(sales) AS total_sales  
       FROM sales_data  
       GROUP BY region;
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  8. Was ist der Zweck der NOW()-Funktion?

    Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück:

       SELECT * FROM table_name WHERE column_name IS NULL;
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  9. Erklären Sie die Verwendung der CONCAT-Funktion.

       DELETE FROM table_name  
       WHERE id NOT IN (SELECT MIN(id) FROM table_name GROUP BY column_name);
    
    Nach dem Login kopieren
    Nach dem Login kopieren
  10. Was ist der Unterschied zwischen TRUNCATE und DELETE?

    • TRUNCATE: Entfernt alle Zeilen aus einer Tabelle, ohne das Löschen einzelner Zeilen zu protokollieren.
    • DELETE: Entfernt Zeilen mit einer Bedingung und protokolliert jede Löschung.

Hallo, ich bin Abhay Singh Kathayat!
Ich bin ein Full-Stack-Entwickler mit Fachwissen sowohl in Front-End- als auch in Back-End-Technologien. Ich arbeite mit einer Vielzahl von Programmiersprachen und Frameworks, um effiziente, skalierbare und benutzerfreundliche Anwendungen zu erstellen.
Sie können mich gerne unter meiner geschäftlichen E-Mail-Adresse erreichen: kaashshorts28@gmail.com.

Das obige ist der detaillierte Inhalt vonGrundlegende SQL-Fragen, die jeder Entwickler beherrschen sollte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage