SQLite
 sql >> Base de données >  >> RDS >> SQLite

SQLite Select

Résumé :dans ce tutoriel, vous apprendrez à utiliser SQLite SELECT pour interroger les données d'une seule table.

Le SELECT L'instruction est l'une des instructions les plus couramment utilisées dans SQL. Le SQLite SELECT fournit toutes les fonctionnalités du SELECT instruction dans la norme SQL.

Utilisations simples de SELECT déclaration

Vous pouvez utiliser le SELECT déclaration pour effectuer un calcul simple comme suit :

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

Essayez-le

Vous pouvez utiliser plusieurs expressions dans le SELECT déclaration comme suit :

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

Essayez-le

Interroger les données d'une table à l'aide de SELECT déclaration

Nous utilisons souvent le SELECT instruction pour interroger les données d'une ou plusieurs tables. La syntaxe du SELECT déclaration est la suivante :

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)

Le SELECT instruction est l'instruction la plus complexe de SQLite. Pour faciliter la compréhension de chaque partie, nous allons casser le SELECT déclaration en plusieurs didacticiels faciles à comprendre.

  • Utilisez la clause ORDER BY pour trier le jeu de résultats
  • Utiliser la clause DISTINCT pour interroger des lignes uniques dans une table
  • Utilisez la clause WHERE pour filtrer les lignes dans le jeu de résultats
  • Utilisez les clauses LIMIT OFFSET pour limiter le nombre de lignes renvoyées
  • Utilisez INNER JOIN ou LEFT JOIN pour interroger les données de plusieurs tables à l'aide de la jointure.
  • Utilisez GROUP BY pour regrouper les lignes du groupe et appliquer la fonction d'agrégation pour chaque groupe.
  • Utiliser la clause HAVING pour filtrer les groupes

Dans ce tutoriel, nous allons nous concentrer sur la forme la plus simple du SELECT instruction qui vous permet d'interroger les données d'une seule table.

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

Même si le SELECT la clause apparaît avant le FROM clause, SQLite évalue le FROM clause d'abord, puis le SELECT clause, donc :

  • Tout d'abord, spécifiez la table à partir de laquelle vous souhaitez obtenir des données dans le FROM clause. Notez que vous pouvez avoir plus d'une table dans le FROM clause. Nous en discuterons dans le tutoriel suivant.
  • Deuxièmement, spécifiez une colonne ou une liste de colonnes séparées par des virgules dans le SELECT clause.

Vous utilisez le point-virgule (;) pour terminer l'instruction.

SQLite SELECT exemples

Jetons un coup d'œil aux tracks table dans la base de données exemple.

Les tracks table contient des colonnes et des lignes. Cela ressemble à une feuille de calcul.

Pour obtenir des données de la table des pistes telles que le trackid, le nom de la piste, le compositeur et le prix unitaire, vous utilisez l'instruction suivante :

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

Essayez-le

Vous spécifiez une liste de noms de colonnes, dont vous souhaitez obtenir des données, dans le SELECT clause et les tracks table dans le FROM clause. SQLite renvoie le résultat suivant :

Pour obtenir des données de toutes les colonnes, vous spécifiez les colonnes des tracks tableau dans le SELECT clause comme suit :

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

Essayez-le

Pour une table avec de nombreuses colonnes, la requête serait si longue qu'elle prendrait du temps à taper. Pour éviter cela, vous pouvez utiliser l'astérisque (*), qui est le raccourci pour toutes les colonnes du tableau comme suit :

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

Essayez-le

La requête est maintenant plus courte et plus claire.

Cependant…

Vous devez utiliser l'astérisque (*) à des fins de test uniquement, et non dans le cadre du développement réel de l'application.

Parce que…

Lorsque vous développez une application, vous devez contrôler ce que SQLite renvoie à votre application. Supposons qu'un tableau comporte 3 colonnes et que vous utilisiez l'astérisque (*) pour récupérer les données des trois colonnes.

Que se passe-t-il si quelqu'un supprime une colonne, votre application ne fonctionnera pas correctement, car elle suppose que trois colonnes sont renvoyées et que la logique de traitement de ces trois colonnes serait rompue.

Si quelqu'un ajoute plus de colonnes, votre application peut fonctionner mais elle obtient plus de données que nécessaire, ce qui crée plus de surcharge d'E/S entre la base de données et l'application.

Essayez donc d'éviter d'utiliser l'astérisque (*) comme une bonne habitude lorsque vous utilisez le SELECT déclaration.

Dans ce tutoriel, vous avez appris à utiliser une forme simple du SQLite SELECT pour interroger les données d'une seule table.