Le meilleur didacticiel SQLite sous_requête en 2024, dans ce didacticiel, vous pouvez apprendre Instruction SELECT sous_requête,Exemples,INSERT déclaration sous_requête,Exemples,UPDATE sous_requête,Exemples,DELETE sous_requête,Exemples,
Subquery ou requêtes imbriquées ou une requête interne est intégré dans la requête clause WHERE dans une autre requête SQLite.
L'utilisation de sous-requête renvoie les données seront utilisées dans la requête principale comme condition de limiter davantage les données à récupérer.
Subqueries peuvent être utilisés avec SELECT, INSERT, UPDATE et DELETE peuvent être accompagnés par les opérateurs d'utilisation tels que =, <,>,> =, <=, IN, aiment ENTRE.
Ce qui suit est une sous-requête plusieurs règles qui doivent être suivies:
Subqueries doivent être placés entre parenthèses.
Sous-requête clause SELECT ne peut avoir une colonne, à moins que plusieurs colonnes dans la requête principale, la comparaison colonne de sous-requête sélectionnée.
ORDER BY ne peut pas être utilisé dans une sous-requête, bien que la requête principale peut utiliser ORDER BY. Vous pouvez utiliser le GROUP BY dans les sous-requêtes, fonctions le même que ORDER BY.
rendements des sous-requêtes plus d'une ligne, ne peuvent être utilisés avec l'opérateur multi-valeur, comme l'opérateur IN.
ENTRE l'opérateur ne peut pas être utilisé avec des sous-requêtes, cependant, ENTRE peut être utilisé dans les sous-requêtes.
Subquery est habituellement utilisé avec une instruction SELECT. La syntaxe de base est la suivante:
column_name SELECT [, nom_colonne] FROM table1 [, table2] WHERE column_name OPÉRATEUR (Nom_colonne SELECT [, nom_colonne] FROM table1 [, table2] [WHERE])
Supposons que la table de l'entreprise a les documents suivants:
ID NOM ADRESSE AGE SALAIRE ---------- ---------- ---------- ---------- ---------- 1 Paul 32 Californie 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norvège 20000.0 4 Mark 25 Rich-Mond 65000,0 5 David 27 Texas 85000,0 6 Kim 22 Sud-Hall 45000,0 7 James 24 Houston 10000.0
Maintenant, nous allons examiner la déclaration sous-requête SELECT:
sqlite> SELECT * DE L'ENTREPRISE WHERE ID IN (SELECT ID DE L'ENTREPRISE WHERE SALAIRE> 45000);
On obtient les résultats suivants:
ID NOM ADRESSE AGE SALAIRE ---------- ---------- ---------- ---------- ---------- 4 Mark 25 Rich-Mond 65000,0 5 David 27 Texas 85000,0
Subqueries peuvent également être utilisés avec l'instruction INSERT. instruction INSERT utilise une sous-requête pour renvoyer des données dans une autre table. Dans la sous-requête les données sélectionnées peuvent être tout caractère, la date ou la modification de la fonction numérique.
La syntaxe de base est la suivante:
INSERT INTO nom_table [(column1 [, column2])] SELECT [* | column1 [, column2] FROM table1 [, table2] [WHERE VALEUR OPÉRATEUR]
Supposons COMPANY_BKP COMPANY structure de table et similaires, et peut utiliser le même CREATE TABLE pour créer, tout simplement changé le nom de la table COMPANY_BKP. Maintenant copier la table entière de l'entreprise pour COMPANY_BKP, la syntaxe est la suivante:
sqlite> INSERT INTO COMPANY_BKP * SELECT FROM COMPANY WHERE ID IN (SELECT ID DE LA SOCIÉTÉ);
Subqueries peuvent être utilisés avec l'instruction UPDATE. Lorsque vous utilisez une instruction UPDATE sous-requête, une ou plusieurs colonnes sont mises à jour dans le tableau.
La syntaxe de base est la suivante:
UPDATE table SET nom_colonne = new_value [WHERE OPÉRATEUR [VALUE] (SELECT COLUMN_NAME DE TABLE_NAME) [WHERE)]
Supposons que nous ayons la table COMPANY_BKP, sauvegarde table COMPANY.
Les exemples suivants de la table de la Compagnie Tous les AGE ou égale à 27 clients SALAIRE mis à jour le 0.50 fois d'origine:
sqlite> UPDATE COMPANY SET SALAIRE = SALAIRE * 0,50 OÙ EN AGE (SELECT AGE DE COMPANY_BKP WHERE AGE> = 27);
Cela aura une incidence sur les deux lignes des derniers dossiers de l'entreprise dans le tableau comme suit:
ID NOM ADRESSE AGE SALAIRE ---------- ---------- ---------- ---------- ---------- 1 Paul 32 Californie 10000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norvège 20000.0 4 Mark 25 Rich-Mond 65000,0 5 David 27 Texas 42500,0 6 Kim 22 Sud-Hall 45000,0 7 James 24 Houston 10000.0
Subqueries peuvent être utilisés avec l'instruction DELETE, tout comme les autres déclarations mentionnées ci-dessus.
La syntaxe de base est la suivante:
DELETE FROM TABLE_NAME [WHERE OPÉRATEUR [VALUE] (SELECT COLUMN_NAME DE TABLE_NAME) [WHERE)]
Supposons que nous ayons la table COMPANY_BKP, sauvegarde table COMPANY.
Les exemples suivants supprimer tous les enregistrements de clients supérieur ou égal AGE 27 table COMPANY:
sqlite> DELETE FROM COMPANY OÙ EN AGE (SELECT AGE DE COMPANY_BKP OÙ AGE> 27);
Cela aura une incidence sur les deux lignes des derniers dossiers de l'entreprise dans le tableau comme suit:
ID NOM ADRESSE AGE SALAIRE ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15000.0 3 Teddy 23 Norvège 20000.0 4 Mark 25 Rich-Mond 65000,0 5 David 27 Texas 42500,0 6 Kim 22 Sud-Hall 45000,0 7 James 24 Houston 10000.0