SQLite
 sql >> Datenbank >  >> RDS >> SQLite

SQLite-Auswahl

Zusammenfassung :In diesem Tutorial lernen Sie, wie Sie SQLite SELECT verwenden -Anweisung zum Abfragen von Daten aus einer einzelnen Tabelle.

Die SELECT -Anweisung ist eine der am häufigsten verwendeten Anweisungen in SQL. Die SQLite SELECT -Anweisung bietet alle Funktionen der SELECT Anweisung im SQL-Standard.

Einfache Verwendung von SELECT Erklärung

Sie können den SELECT verwenden -Anweisung, um eine einfache Berechnung wie folgt durchzuführen:

SELECT	1 + 1;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Sie können mehrere Ausdrücke in SELECT verwenden Anweisung wie folgt:

SELECT 
   10 / 5, 
   2 * 4 ;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Abfragen von Daten aus einer Tabelle mit SELECT Erklärung

Wir verwenden oft den SELECT -Anweisung zum Abfragen von Daten aus einer oder mehreren Tabellen. Die Syntax von SELECT Anweisung lautet wie folgt:

SELECT DISTINCT column_list
FROM table_list
  JOIN table ON join_condition
WHERE row_filter
ORDER BY column
LIMIT count OFFSET offset
GROUP BY column
HAVING group_filter;Code language: SQL (Structured Query Language) (sql)

Die SELECT -Anweisung ist die komplexeste Anweisung in SQLite. Um das Verständnis der einzelnen Teile zu erleichtern, brechen wir den SELECT Anweisung in mehrere leicht verständliche Tutorials.

  • Verwenden Sie die ORDER BY-Klausel, um die Ergebnismenge zu sortieren
  • Verwenden Sie die DISTINCT-Klausel, um eindeutige Zeilen in einer Tabelle abzufragen
  • Verwenden Sie die WHERE-Klausel, um Zeilen in der Ergebnismenge zu filtern
  • Verwenden Sie LIMIT OFFSET-Klauseln, um die Anzahl der zurückgegebenen Zeilen einzuschränken
  • Verwenden Sie INNER JOIN oder LEFT JOIN, um Daten aus mehreren Tabellen mithilfe von Join abzufragen.
  • Verwenden Sie GROUP BY, um die Gruppenzeilen in Gruppen zu gliedern, und wenden Sie die Aggregatfunktion für jede Gruppe an.
  • Verwenden Sie die HAVING-Klausel, um Gruppen zu filtern

In diesem Tutorial konzentrieren wir uns auf die einfachste Form von SELECT -Anweisung, mit der Sie Daten aus einer einzelnen Tabelle abfragen können.

SELECT column_list
FROM table;Code language: SQL (Structured Query Language) (sql)

Obwohl die SELECT -Klausel steht vor dem FROM -Klausel wertet SQLite den FROM aus -Klausel zuerst und dann SELECT Klausel, also:

  • Spezifizieren Sie zuerst die Tabelle, aus der Sie Daten im FROM erhalten möchten Klausel. Beachten Sie, dass Sie mehr als eine Tabelle im FROM haben können Klausel. Wir werden es im folgenden Tutorial besprechen.
  • Zweitens geben Sie eine Spalte oder eine Liste von durch Kommas getrennten Spalten im SELECT an Klausel.

Mit dem Semikolon (;) beenden Sie die Anweisung.

SQLite SELECT Beispiele

Werfen wir einen Blick auf die tracks Tabelle in der Beispieldatenbank.

Die tracks Tabelle enthält Spalten und Zeilen. Es sieht aus wie eine Tabelle.

Um Daten aus der Titeltabelle wie Titel-ID, Titelname, Komponist und Stückpreis abzurufen, verwenden Sie die folgende Anweisung:

SELECT
	trackid,
	name,
	composer,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Sie geben im SELECT einen Listenspaltennamen an, für den Sie Daten abrufen möchten -Klausel und die tracks Tabelle in FROM Klausel. SQLite gibt das folgende Ergebnis zurück:

Um Daten aus allen Spalten zu erhalten, geben Sie die Spalten der tracks an Tabelle in der SELECT Klausel wie folgt:

SELECT
	trackid,
	name,
	albumid,
	mediatypeid,
	genreid,
	composer,
	milliseconds,
	bytes,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Bei einer Tabelle mit vielen Spalten wäre die Abfrage so lang, dass die Eingabe zeitaufwändig wäre. Um dies zu vermeiden, können Sie das Sternchen (*) verwenden, das wie folgt für alle Spalten der Tabelle steht:

SELECT * FROM tracks;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Die Abfrage ist jetzt kürzer und sauberer.

Allerdings…

Sie sollten das Sternchen (*) nur zu Testzwecken verwenden, nicht in der eigentlichen Anwendungsentwicklung.

Weil…

Wenn Sie eine Anwendung entwickeln, sollten Sie steuern, was SQLite an Ihre Anwendung zurückgibt. Angenommen, eine Tabelle hat 3 Spalten, und Sie verwenden das Sternchen (*), um die Daten aus allen drei Spalten abzurufen.

Wenn jemand eine Spalte entfernt, würde Ihre Anwendung nicht richtig funktionieren, da sie davon ausgeht, dass drei Spalten zurückgegeben werden und die Logik zur Verarbeitung dieser drei Spalten fehlerhaft wäre.

Wenn jemand mehr Spalten hinzufügt, funktioniert Ihre Anwendung möglicherweise, aber sie erhält mehr Daten als benötigt, wodurch mehr I/O-Overhead zwischen der Datenbank und der Anwendung entsteht.

Versuchen Sie also, das Sternchen (*) als gute Angewohnheit zu vermeiden, wenn Sie SELECT verwenden Erklärung.

In diesem Tutorial haben Sie gelernt, wie Sie eine einfache Form des SQLite SELECT verwenden -Anweisung zum Abfragen von Daten aus einer einzelnen Tabelle.