mysql创建视图

mysql创建视图,第1张

(1).第一类:create view v as select * from table

(2).第二类:create view v as select id,name,age from table

(3).第三类:create view v[vid,vname,vage] as select id,name,age from table

如果涉及到数据量过大,业务逻辑需要跨表查询等等也可建立一个跨表的视图,有三种情况:

一、基于同一数据库

这种情况较为简单,只需简单的一行sql命令,如下:

create view v as (select * from table1) union all (select * from table2)

二、基于不同数据库

这种情况只比上面的sql语句多一个数据库的名字,如下:

create view 数据库1.v as (select * from 数据库1.table1) union all (select * from 数据库2.table2)

create view 数据库2.v as (select * from 数据库1.table1) union all (select * from 数据库2.table2)

如果执行第一个sql将在数据库1下建立视图,反之亦然;

建立视图的语句本身就可以写成create or replace,也就是建立或者重建。所以个人想到的办法就是:删除--再命名重建,或者也可以先建立新的视图-再删除旧的,新旧视图并不冲突。

至于重命名,我能想到的只有rename命令,不过这个能 *** 作视图吗,我表示怀疑,你可以试试(按照 *** 作表的方式试试),不过估计不行。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/7314838.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-04
下一篇2023-04-04

发表评论

登录后才能评论

评论列表(0条)

    保存