当前位置:网站首页>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
边栏推荐
- 强化学习-学习笔记3 | 策略学习
- [yolov5.yaml parsing]
- Liunx prohibit Ping explain the different usage of traceroute
- Matlab label2idx function (convert the label matrix into a cell array with linear index)
- Pytorch linear regression
- 【PyTorch预训练模型修改、增删特定层】
- Codeforces Round #804 (Div. 2)
- splunk配置163邮箱告警
- What is the difference between canvas and SVG?
- pytorch-多层感知机MLP
猜你喜欢
![[yolov3 loss function]](/img/79/87bcc408758403cf3993acc015381a.png)
[yolov3 loss function]
![[pytorch pre training model modification, addition and deletion of specific layers]](/img/cb/aa0b1116ec9b98e3ee5725aa58f4fe.png)
[pytorch pre training model modification, addition and deletion of specific layers]

Principle of persistence mechanism of redis

Matlab superpixels function (2D super pixel over segmentation of image)

Liunx prohibit Ping explain the different usage of traceroute

Flutter2 heavy release supports web and desktop applications

abap查表程序

Network five whip

Hiengine: comparable to the local cloud native memory database engine

Splunk configuration 163 mailbox alarm
随机推荐
Want to ask, how to choose a securities firm? Is it safe to open an account online?
Intern position selection and simplified career development planning in Internet companies
Linux Installation and deployment lamp (apache+mysql+php)
[pytorch modifies the pre training model: there is little difference between the measured loading pre training model and the random initialization of the model]
Halcon 模板匹配实战代码(一)
1 plug-in to handle advertisements in web pages
Principle of persistence mechanism of redis
Is investment and finance suitable for girls? What financial products can girls buy?
July Huaqing learning-1
Course design of compilation principle --- formula calculator (a simple calculator with interface developed based on QT)
Sentinel sentinel mechanism of master automatic election in redis master-slave
Complete activity switching according to sliding
[untitled]
Video networkstate property
Simply solve the problem that the node in the redis cluster cannot read data (error) moved
Matlab boundarymask function (find the boundary of the divided area)
[mainstream nivida graphics card deep learning / reinforcement learning /ai computing power summary]
2022年国内云管平台厂商哪家好?为什么?
MVVM framework part I lifecycle
【SingleShotMultiBoxDetector(SSD,单步多框目标检测)】