SQLite Instruction SELECT
L'instructionSELECTSELECT de SQLite est utilisée pour récupérer des données à partir des tables de la base de données SQLite, en renvoyant les données sous forme de tables de résultats. Ces tables de résultats sont également appelées ensembles de résultats.
Syntaxe
La syntaxe de base de l'instruction SELECT de SQLite est la suivante :
SELECT column1, column2, columnN FROM table_name;
Ici, column1, column2... sont les champs d'une table, dont les valeurs sont celles que vous souhaitez récupérer. Si vous souhaitez récupérer tous les champs disponibles, vous pouvez utiliser la syntaxe suivante :
SELECT * FROM table_name;
Exemples
Supposons que la table COMPANY contient les enregistrements suivants :
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
Voici un exemple qui utilise l'instruction SELECT pour récupérer et afficher tous ces enregistrements. Ici, les deux premières commandes sont utilisées pour configurer une sortie correctement formatée.
sqlite>.header on sqlite>.mode column sqlite> SELECT * FROM COMPANY;
Enfin, vous obtiendrez le résultat suivant :
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
Si vous souhaitez uniquement récupérer les champs spécifiés de la table COMPANY, utilisez la requête suivante :
sqlite> SELECT ID, NAME, SALARY FROM COMPANY;
La requête ci-dessus produira le résultat suivant :
ID NAME SALARY ---------- ---------- ---------- 1 Paul 20000.0 2 Allen 15000.0 3 Teddy 20000.0 4 Mark 65000.0 5 David 85000.0 6 Kim 45000.0 7 James 10000.0
Définition de la largeur des colonnes de sortie
Parfois, en raison de la largeur par défaut des colonnes à afficher.mode column, dans ce cas, la sortie est tronquée. À ce stade, vous pouvez utiliser la commande.width num, num....pour définir la largeur des colonnes d'affichage, comme indiqué ci-dessous :
sqlite>.width 10, 20, 10 sqlite>SELECT * FROM COMPANY;
La commande.widthci-dessus définit la largeur de la première colonne à 10, la deuxième colonne à 20, et la troisième colonne à 10. Par conséquent, l'instruction SELECT ci-dessus produira le résultat suivant :
ID NAME AGE ADDRESS SALARY ---------- -------------------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
Informations sur le schéma
Comme toutes lescommandes pointne sont disponibles que dans l'invite SQLite, lorsque vous programmez avec SQLite, vous devez utiliser ce qui suit avec l'instruction SELECT de la tablesqlite_masterpour lister toutes les tables créées dans la base de données :
sqlite> SELECT tbl_name FROM sqlite_master WHERE type = 'table';
En supposant que la seule table COMPANY existe déjà dans testDB.db, le résultat suivant sera produit :
tbl_name ---------- COMPANY
Vous pouvez lister les informations complètes sur la table COMPANY, comme indiqué ci-dessous :
sqlite> SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = 'COMPANY';
En supposant que la seule table COMPANY existe déjà dans testDB.db, le résultat suivant sera produit :
CREATE TABLE COMPANY( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL )Autres extensions