返回顶部
首页 > 资讯 > 数据库 >MYSQL中视图如何使用
  • 623
分享到

MYSQL中视图如何使用

2024-04-02 19:04:59 623人浏览 独家记忆
摘要

Mysql中视图如何使用?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!1、什么是视图执行一条sql,将结果集保存在一张虚拟

Mysql中视图如何使用?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

1、什么是视图

执行一条sql,将结果集保存在一张虚拟表中

(相关推荐:mysql教程

2、为什么要使用视图

  1. 重复利用SQL语句

  2. 简化SQL查询,快速取数据

  3. 只用知道表的部分结构

  4. 保护数据,根据特定授权

  5. 更改数据格式和表示,视图可返回与底层表的表示和格式不同的数据。

注意事项
• 在视图创建后,可以用与表基本相同的方式使用(查询、过滤、排序数据、与其他视图或连结、(添加、更新))
• 视图只是用来查看存储在别处的数据的设施,本身不包含数据,返回的数据也是从其他表检索出来的。
• 因为视图本身不包含数据,索引多个表连结或嵌套可能存在性能问题,需测试

3、规则和限制

  1. 表名必须唯一(与其他视图和表)

  2. 创建视图没有限制

  3. 足够权限

  4. 视图可以嵌套,可以从其他视图查询来构造一个视图

  5. 如果视图和从视图中查询都有order by,视图中的order by将被覆盖

  6. 视图不能索引

  7. 视图可以和表一起使用

4、使用视图

  1. 创建视图 create view

  2. 查看创建视图的语句。Show create view viewname

  3. 删除视图 drop view viewname

  4. 更新视图,1⃣️ 先drop后create 2⃣️ 直接用create or replace view

  5. 利用视图简化复杂的联结查询

5、利用视图简化复杂的联结查询

创建视图

CREATE VIEW productcustomers AS
SELECT cust_name, cust_contact, prod_id
FROM customers, orders, orderitems
WHERE customers.cust_id = orders.cust_id
AND   orderitems.order_num = orders.order_num

使用视图

SELECT cust_name, cust_contact
FROM productcustomers
WHERE prod_id = 'TNT2';

6、用视图重新格式化检索出的数据

select concat (rtrim(vend_name) , '(',rtrim(vend_country),')') as vend_title   from vendors order by vend_name;

如果经常用到这个格式的话,可以创建一个视图

CREATE VIEW vendorlocations AS
SELECT
    concat ( rtrim( vend_name ), '(', rtrim( vend_country ), ')' ) AS vend_title 
FROM
    vendors 
ORDER BY
    vend_name;

可以直接通过视图查询得出结果

SELECT * FROM vendorlocations;

7、用视图过滤不想要的数据

create view custmeremaillist AS
SELECT cust_id ,cust_name,cust_email
from customers
where cust_email is not NULL;

直接使用视图

SELECT * from custmeremaillist ;

8、使用视图与计算字段

mysql查询

SELECT
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

创建视图

CREATE VIEW orderitemsexpanded AS
SELECT
    order_num,
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

使用视图

SELECT
    *
FROM
    orderitemsexpanded
WHERE order_num=20005;

9、更新视图

通常,视图是可以更新的(insert、update、delete)。更新视图将更新基表。如果视图中有以下定义将不能被更新。

1. 分组(group by 和 having)
2. 联结
3. 自查询
4. 并
5. 聚合函数(min()、count()、sum()等)
6. Distinct
7. 导出(计算)列

所以视图最好直接使用select查询。

感谢各位的阅读!看完上述内容,你们对MYSQL中视图如何使用大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MYSQL中视图如何使用

本文链接: https://lsjlt.com/news/52299.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MYSQL中视图如何使用
    MYSQL中视图如何使用?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!1、什么是视图执行一条SQL,将结果集保存在一张虚拟...
    99+
    2024-04-02
  • 如何使用mysql视图
    这篇文章主要讲解了如何使用mysql视图,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。什么是视图:视图是一种基于查询结果的虚拟表,数据来源的表称为基本表。视图的建立和删除不影响...
    99+
    2024-04-02
  • MySQL中如何创建和使用视图
    要在MySQL中创建视图,可以使用CREATE VIEW语句。例如,要创建一个名为customer_view的视图,可以按照以下步骤...
    99+
    2024-04-09
    MySQL
  • MySQL如何创建和使用视图
    MySQL中可以通过CREATE VIEW语句来创建视图,视图是一个虚拟的表,它是根据SELECT语句的结果集生成的。 创建...
    99+
    2024-03-06
    MySQL
  • 如何创建和使用MySQL视图
    如何创建和使用MySQL视图? MySQL是一种流行的关系型数据库管理系统,它允许用户创建视图来简化复杂的查询操作并提高查询的效率。视图是通过查询语句创建的虚拟表,可以像普通表一样使用...
    99+
    2024-04-02
  • Oracle中如何使用all_视图
    Oracle中如何使用all_视图,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。数据字典相关连接:Oracle数据字典:常用字典Oracle数...
    99+
    2024-04-02
  • Oracle中如何使用dba_视图
    Oracle中如何使用dba_视图,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。数据字典相关连接:Oracle数据字典:常用字...
    99+
    2024-04-02
  • Oracle中如何使用user_视图
    这篇文章给大家介绍Oracle中如何使用user_视图,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。数据字典相关连接:Oracle数据字典:常用字典表存储关于关联数据库的信息,只有 O...
    99+
    2024-04-02
  • 视图中如何使用rowid字段
    在oracle数据库中,创建视图不会生成对应的rowid,只会生成伪列rownum;在视图中直接使用select rowid from 视图1  会直接发生报错“ORA-01446:无法...
    99+
    2024-04-02
  • Sql Server中如何使用系统视图
    Sql Server中如何使用系统视图,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一:那些系统视图1. 系统视图是干什么呢?...
    99+
    2024-04-02
  • 如何使用多个表中的数据创建 MySQL 视图?
    MySQL UNION 运算符可以组合两个或多个结果集,因此我们可以使用 UNION 运算符创建一个包含多个表数据的视图。为了理解这个概念,我们使用具有以下数据的基表“Student_info”和“Student_detai...
    99+
    2023-10-22
  • 我们如何使用 RIGHT JOIN 创建 MySQL 视图?
    为了说明如何使用 RIGHT JOIN 创建 MySQL 视图,我们使用“Customers”和“Resreve”表中的以下数据 -mysql> Select * from Customers; +-------------...
    99+
    2023-10-22
  • 我们如何使用 LEFT JOIN 创建 MySQL 视图?
    为了说明使用 LEFT JOIN 的 MySQL 视图的制作,我们使用“Customers”和“Resreve”表中的以下数据 -mysql> Select * from customers; +-------------+...
    99+
    2023-10-22
  • 我们如何使用 INNER JOIN 创建 MySQL 视图?
    为了说明如何使用 INNER JOIN 制作 MySQL 视图,我们使用“Customers”和“Resreve”表中的以下数据 -mysql> Select * from customers; +-------------...
    99+
    2023-10-22
  • MySQL中如何创建一个视图
    在 MySQL 中创建一个视图可以通过使用 CREATE VIEW 语句来完成。视图是基于一个或多个表的查询结果,它类似于虚拟表,可以像表一样查询和使用。 下面是创建一个视图的基本语法: CREATE VIEW view_name ASSE...
    99+
    2023-08-17
    mysql 数据库
  • MySQL如何创建视图
    基本语法 可以使用 CREATE VIEW 语句来创建视图。 语法格式如下: CREATE VIEW <视图名> AS <SELECT语句> 语法说明如下。 <视图名...
    99+
    2022-05-13
    MySQL 视图 MySQL 创建视图
  • 如何创建mysql视图
    下面一起来了解下如何创建mysql视图,相信大家看完肯定会受益匪浅,文字在精不在多,希望如何创建mysql视图这篇短内容是你想要的。 创建视图,并没有在数据库中保存用户数据,视图相当于是表的一个窗...
    99+
    2024-04-02
  • 如何在Mysql数据库中使用视图、事务和索引
    今天就跟大家聊聊有关如何在Mysql数据库中使用视图、事务和索引,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。视图是对若干张基本表的引用,一张虚表,...
    99+
    2024-04-02
  • 我们如何使用子查询创建 MySQL 视图?
    为了说明如何使用子查询创建 MySQL 视图,我们使用“Cars”表中的以下数据 -mysql> select * from cars; +------+--------------+---------+ | ID | ...
    99+
    2023-10-22
  • win10任务视图如何使用
    本文小编为大家详细介绍“win10任务视图如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“win10任务视图如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。win10任务视图使用方法:在任务栏中单机...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作