当前位置:网站首页>MySQL view
MySQL view
2022-07-05 12:12:00 【ziyi813】
MySQL View
Introduce
View view It's a virtual table , It's not real , Its essence is based on SQL Statement to get a dynamic data set , And name it , Users only need to use the view name to get the result set , And you can use it as a table .
The database only stores the definition of the view , There is no data stored in view , These data are still put in the original data table .
 When using views to query data , The database system will take the corresponding data from the original data table . therefore , The data in the view depends on the data in the source data table , Source data change , The data displayed in the view will also change .
effect
Simplify the code , Reusable queries can be closed into views for reuse , At the same time, it can make complex queries easy to understand and use
Security reasons , If there are a lot of data in a table , A lot of information doesn't want to be seen by everyone , You can use the view , Such as : There is a table that shows only names and some insensitive fields open to others , ID card and salary are not displayed , It can be applied to different users , Set different views .
View creation
Grammar format :
create [or replace] [algorithm = {undefind | mgerge | templtable } }]
view view_name [ {column_list} ]
as select_statement
[with [cascaded | local ] check option ]
Parameter description :
- algorithm: optional , Algorithm for view selection
- view_name: Represents the name of the view to be created
- column_list: optional , Specifies the noun for each attribute in the view , By default, it is the same as select The properties of the query in the statement are the same
- select_statement: Represents a complete query statement , Import the query record into the view
- [width [cascaded | local ] check option ]: optional , It means that updating the view should be within the permission range of the view
The operation sample :
-- Create view 1
create or replace view view1_emp
as
select emp_name from emp;

-- Query all tables , Differentiate view
select full tables;
Modify the view
Modifying a view means modifying the definition of a table that already exists in the database . When some fields in this table change , You can modify the view to keep it consistent with this table .MySQL Pass through CREATE REPLACE VIEW Statement and ALTER VIEW Statement to modify the view .
Format :
alter view View name as select sentence
Example :
-- Modify the view
alter view view1_emp
AS
select emp_name, salary from emp;
Update the view
Some views are updatable . in other words , Can be in UPDATE、DELETE perhaps INTER And so on , In a more basic form ( Data source table ) The content of . For updatable views , Rows in the view and rows in the base table must have a one-to-one relationship , If the view contains any of the following structures , So it's not updatable .
- Aggregate functions (SUM(), MIN(), MAX(), AVG(), COUNT() etc. )
- DISTINCT
- GROUP BY
- HAVING
- UNION perhaps UNION ALL
- JOIN
- FORM Non updatable view in Clause
- WHERE Subquery in Clause , quote FROM Table in clause
- Reference text values only
Although the data can be updated in the view , But there are a lot of restrictions , In general , It's best to use the view as a virtual table for querying data , Instead of updating data through views . because , When using views to update data , If the limitation of updating data is not fully considered , Data update may fail .
Other operations of view
Rename view
-- Rename view
rename table view1_emp to myview1;
Delete view
-- Delete view
drop view if exists myview1
边栏推荐
- 查看rancher中debug端口信息,并做IDEA Remote Jvm Debug
- Check the debug port information in rancher and do idea remote JVM debug
- abap查表程序
- 1 plug-in to handle advertisements in web pages
- Splunk configuration 163 mailbox alarm
- The most comprehensive new database in the whole network, multidimensional table platform inventory note, flowus, airtable, seatable, Vig table Vika, flying Book Multidimensional table, heipayun, Zhix
- Open3d mesh (surface) coloring
- 【上采样方式-OpenCV插值】
- Time tools
- byte2String、string2Byte
猜你喜欢
Linux Installation and deployment lamp (apache+mysql+php)
HiEngine:可媲美本地的云原生内存数据库引擎
多表操作-自关联查询
[yolov3 loss function]
Read and understand the rendering mechanism and principle of flutter's three trees
Multi table operation - Auto Association query
Simply solve the problem that the node in the redis cluster cannot read data (error) moved
【SingleShotMultiBoxDetector(SSD,单步多框目标检测)】
Pytorch weight decay and dropout
什么是数字化存在?数字化转型要先从数字化存在开始
随机推荐
Design of music box based on assembly language
Multi table operation - sub query
Xi IO flow
[pytorch modifies the pre training model: there is little difference between the measured loading pre training model and the random initialization of the model]
无线WIFI学习型8路发射遥控模块
Embedded software architecture design - message interaction
跨平台(32bit和64bit)的 printf 格式符 %lld 输出64位的解决方式
Swift - enables textview to be highly adaptive
[yolov3 loss function]
Vscode shortcut key
Codeworks 5 questions per day (1700 average) - day 5
15 methods in "understand series after reading" teach you to play with strings
Open3d mesh (surface) coloring
[cloud native | kubernetes] actual battle of ingress case (13)
yolov5目標檢測神經網絡——損失函數計算原理
Redirection of redis cluster
[loss functions of L1, L2 and smooth L1]
网络五连鞭
【yolov5.yaml解析】
Take you two minutes to quickly master the route and navigation of flutter