Maison base de données tutoriel mysql Explication détaillée du rôle des vues MySQL (2) - filtrage des données, calcul des champs et mise à jour des vues

Explication détaillée du rôle des vues MySQL (2) - filtrage des données, calcul des champs et mise à jour des vues

May 17, 2017 pm 04:40 PM

Utilisez des vues pour filtrer les données indésirables

Les vues sont également utiles pour appliquer des clauses WHERE ordinaires. Par exemple, vous pouvez définir une vue de liste de courrier électronique client qui filtre les clients sans adresse e-mail. A cet effet, la déclaration suivante peut être utilisée :

Entrée :

create view customeremaillist as select cust_id,cust_name,cust_email from customers where cust_email is not null;
Copier après la connexion

Analyse : Évidemment, lors de l'envoi d'un e-mail à une liste de diffusion, vous devez exclure les utilisateurs sans adresse e-mail . La clause WHERE filtre ici les lignes avec des valeurs NULL dans la colonne cust_email afin qu'elles ne soient pas récupérées.

Désormais, la vue customeremaillist peut être utilisée comme n'importe quelle autre table.

Entrée :

select * fromcustomeremaillist;
Copier après la connexion

Sortie :

Explication détaillée du rôle des vues MySQL (2) - filtrage des données, calcul des champs et mise à jour des vues

Clause WHERE et clause WHERE si a est utilisée lors de la récupération des données de la vue WHERE clause, les deux ensembles de clauses (l’une dans la vue et l’autre passée à la vue) sont automatiquement combinées.

Utiliser des vues avec des champs calculés

Les vues sont particulièrement utiles pour simplifier l'utilisation des champs calculés. Vous trouverez ci-dessous une instruction SELECT introduite au chapitre 10. Il récupère les articles dans un ordre spécifique, calculant le prix total de chaque article :

Entrée :

select prod_id,quantity,item_price,quantity*item_price as expanded_price from orderitems where order_num = 20005;
Copier après la connexion

Sortie :

Explication détaillée du rôle des vues MySQL (2) - filtrage des données, calcul des champs et mise à jour des vues

Pour le convertir en vue, procédez comme suit :

Saisie :

create view orderitemsexpanded as select prod_id,quantity,item_price,quantity*item_price as expanded_price from orderitems;
Copier après la connexion

Pour récupérer les détails de la commande 20005 (la sortie ci-dessus), procédez comme suit :

Entrée :

select * from orderitemsexpanded where order_num = 20005;
Copier après la connexion

Sortie :

Explication détaillée du rôle des vues MySQL (2) - filtrage des données, calcul des champs et mise à jour des vues

Comme vous pouvez le constater, les vues sont très faciles à créer et à utiliser. Utilisées correctement, les vues peuvent grandement simplifier le traitement de données complexes.


Mise à jour des vues

Toutes les vues jusqu'à présent sont utilisées avec les instructions SELECT. Cependant, les données de la vue peuvent-elles être mises à jour ? La réponse dépend de la situation.

En général, les vues peuvent être mises à jour (c'est-à-dire que INSERT , UPDATE et DELETE peuvent être utilisées dessus). La mise à jour d'une vue met à jour sa table de base (rappelez-vous que la vue elle-même ne contient aucune donnée). Si vous ajoutez ou supprimez des lignes à une vue, vous ajoutez ou supprimez en réalité des lignes à sa table de base.

Cependant, toutes les vues ne sont pas modifiables. Fondamentalement, on peut dire que si MySQL ne peut pas déterminer correctement les données de base en cours de mise à jour, les mises à jour (y compris les insertions et les suppressions) ne sont pas autorisées. Cela signifie en fait que s'il y a les opérations suivantes dans la définition de la vue, la vue ne peut pas être mise à jour :

1. Regroupement (en utilisant GROUP BY et HAVING) ; >

3. Sous-requête ;

4. Union ;

5. > 6.DISTINCT;

7. Colonne Exporter (calculer).

En d'autres termes, les vues de la plupart des exemples de ce chapitre ne peuvent pas être mises à jour. Cela peut sembler une limitation sérieuse, mais ce n'est pas le cas, puisque les vues sont principalement utilisées pour la récupération de données.

Changements possibles Les limitations listées ci-dessus sont correctes à partir de MySQL 5. Cependant, les futures versions de MySQL lèveront probablement certaines restrictions.

Utiliser des vues pour la récupération En général, vous devez utiliser des vues pour la récupération (instructions SELECT) plutôt que pour les mises à jour (INSERT, UPDATE et DELETE).

Résumé :

View est une table virtuelle. Ils ne contiennent pas de données mais des requêtes pour récupérer les données selon les besoins. Les vues fournissent une encapsulation hiérarchique des instructions MySQL SELECT qui peuvent être utilisées pour simplifier le traitement des données et reformater ou protéger les données sous-jacentes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Mar 19, 2025 pm 03:51 PM

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

Expliquez les capacités de recherche en texte intégral InNODB. Expliquez les capacités de recherche en texte intégral InNODB. Apr 02, 2025 pm 06:09 PM

Les capacités de recherche en texte intégral d'InNODB sont très puissantes, ce qui peut considérablement améliorer l'efficacité de la requête de la base de données et la capacité de traiter de grandes quantités de données de texte. 1) INNODB implémente la recherche de texte intégral via l'indexation inversée, prenant en charge les requêtes de recherche de base et avancées. 2) Utilisez la correspondance et contre les mots clés pour rechercher, prendre en charge le mode booléen et la recherche de phrases. 3) Les méthodes d'optimisation incluent l'utilisation de la technologie de segmentation des mots, la reconstruction périodique des index et l'ajustement de la taille du cache pour améliorer les performances et la précision.

Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Mar 18, 2025 pm 12:01 PM

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Mar 21, 2025 pm 06:28 PM

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]

Comment gérez-vous les grands ensembles de données dans MySQL? Comment gérez-vous les grands ensembles de données dans MySQL? Mar 21, 2025 pm 12:15 PM

L'article traite des stratégies pour gérer de grands ensembles de données dans MySQL, y compris le partitionnement, la rupture, l'indexation et l'optimisation des requêtes.

Comment déposez-vous une table dans MySQL à l'aide de l'instruction TABLE DROP? Comment déposez-vous une table dans MySQL à l'aide de l'instruction TABLE DROP? Mar 19, 2025 pm 03:52 PM

L'article discute de la suppression des tables dans MySQL en utilisant l'instruction TABLE DROP, mettant l'accent sur les précautions et les risques. Il souligne que l'action est irréversible sans sauvegardes, détaillant les méthodes de récupération et les risques potentiels de l'environnement de production.

Expliquez différents types d'index MySQL (B-Tree, hachage, texte intégral, spatial). Expliquez différents types d'index MySQL (B-Tree, hachage, texte intégral, spatial). Apr 02, 2025 pm 07:05 PM

MySQL prend en charge quatre types d'index: B-Tree, hachage, texte intégral et spatial. 1. L'indice de tree B est adapté à la recherche de valeur égale, à la requête de plage et au tri. 2. L'indice de hachage convient aux recherches de valeur égale, mais ne prend pas en charge la requête et le tri des plages. 3. L'index de texte complet est utilisé pour la recherche en texte intégral et convient pour le traitement de grandes quantités de données de texte. 4. L'indice spatial est utilisé pour la requête de données géospatiaux et convient aux applications SIG.

Comment créez-vous des index sur les colonnes JSON? Comment créez-vous des index sur les colonnes JSON? Mar 21, 2025 pm 12:13 PM

L'article discute de la création d'index sur les colonnes JSON dans diverses bases de données comme PostgreSQL, MySQL et MongoDB pour améliorer les performances de la requête. Il explique la syntaxe et les avantages de l'indexation des chemins JSON spécifiques et répertorie les systèmes de base de données pris en charge.

See all articles