sql >> Database >  >> RDS >> SQLite

SQLite selecteren

Samenvatting :in deze tutorial leer je hoe je SQLite SELECT . gebruikt statement om gegevens uit een enkele tabel op te vragen.

De SELECT statement is een van de meest gebruikte instructies in SQL. De SQLite SELECT statement biedt alle functies van de SELECT statement in SQL-standaard.

Eenvoudig gebruik van SELECT verklaring

U kunt de SELECT . gebruiken statement om als volgt een eenvoudige berekening uit te voeren:

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

Probeer het

U kunt meerdere uitdrukkingen gebruiken in de SELECT verklaring als volgt:

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

Probeer het

Opvragen van gegevens uit een tabel met de SELECT verklaring

We gebruiken vaak de SELECT statement om gegevens uit een of meer tabellen op te vragen. De syntaxis van de SELECT verklaring is als volgt:

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)

De SELECT statement is het meest complexe statement in SQLite. Om elk onderdeel gemakkelijker te begrijpen, breken we de SELECT verklaring in meerdere gemakkelijk te begrijpen tutorials.

  • Gebruik de ORDER BY-component om de resultatenset te sorteren
  • Gebruik de clausule DISTINCT om unieke rijen in een tabel op te vragen
  • Gebruik de WHERE-component om rijen in de resultatenset te filteren
  • Gebruik LIMIT OFFSET-clausules om het aantal geretourneerde rijen te beperken
  • Gebruik INNER JOIN of LEFT JOIN om gegevens uit meerdere tabellen op te vragen met behulp van join.
  • Gebruik GROUP BY om de groepsrijen in groepen te krijgen en pas de aggregatiefunctie voor elke groep toe.
  • Gebruik de HAVING-component om groepen te filteren

In deze tutorial gaan we ons concentreren op de eenvoudigste vorm van de SELECT statement waarmee u gegevens uit een enkele tabel kunt opvragen.

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

Hoewel de SELECT clausule verschijnt voor de FROM clausule, evalueert SQLite de FROM clausule eerst en dan de SELECT clausule, daarom:

  • Geef eerst de tabel op waaruit u gegevens wilt halen in de FROM clausule. Merk op dat u meer dan één tabel kunt hebben in de FROM clausule. We zullen het in de volgende tutorial bespreken.
  • Ten tweede, specificeer een kolom of een lijst met door komma's gescheiden kolommen in de SELECT clausule.

U gebruikt de puntkomma (;) om de instructie te beëindigen.

SQLite SELECT voorbeelden

Laten we eens kijken naar de tracks tabel in de voorbeelddatabase.

De tracks tabel bevat kolommen en rijen. Het ziet eruit als een spreadsheet.

Om gegevens uit de tracktabel te halen, zoals trackid, tracknaam, componist en eenheidsprijs, gebruikt u de volgende verklaring:

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

Probeer het

U specificeert een lijst met kolomnamen, waarvan u gegevens wilt krijgen, in de SELECT clausule en de tracks tabel in de FROM clausule. SQLite geeft het volgende resultaat:

Om gegevens uit alle kolommen te krijgen, specificeert u de kolommen van de tracks tabel in de SELECT clausule als volgt:

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

Probeer het

Voor een tabel met veel kolommen zou de query zo lang zijn dat het tijdrovend is om te typen. Om dit te voorkomen, kunt u de asterisk (*) gebruiken, de afkorting voor alle kolommen van de tabel als volgt:

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

Probeer het

De zoekopdracht is nu korter en overzichtelijker.

Maar…

Gebruik de asterisk (*) alleen voor testdoeleinden, niet voor de echte applicatie-ontwikkeling.

Omdat…

Wanneer u een toepassing ontwikkelt, moet u bepalen wat SQLite teruggeeft aan uw toepassing. Stel, een tabel heeft 3 kolommen en u gebruikt de asterisk (*) om de gegevens uit alle drie de kolommen op te halen.

Wat als iemand een kolom verwijdert, uw toepassing zou niet goed werken, omdat het ervan uitgaat dat er drie kolommen worden geretourneerd en de logica om die drie kolommen te verwerken zou worden verbroken.

Als iemand meer kolommen toevoegt, kan uw toepassing werken, maar krijgt deze meer gegevens dan nodig is, waardoor er meer I/O-overhead ontstaat tussen de database en de toepassing.

Dus probeer het gebruik van de asterisk (*) als een goede gewoonte te vermijden wanneer u de SELECT . gebruikt verklaring.

In deze tutorial heb je geleerd hoe je een eenvoudige vorm van de SQLite SELECT . kunt gebruiken statement om gegevens uit een enkele tabel op te vragen.


  1. Haal de datum/tijd uit een Unix-tijdstempel in SQLite

  2. Converteer 'datetime' naar 'datetime2' in SQL Server (T-SQL-voorbeelden)

  3. Hoe kopieer ik SQL Azure-database naar mijn lokale ontwikkelserver?

  4. Een Java-toepassing maken in Oracle JDeveloper, deel 2