MySql创建视图
来源:互联网 发布:淘宝卖家怎么上淘抢购 编辑:程序博客网 时间:2024/06/05 20:30
文章转载于:https://www.cnblogs.com/sening/p/4526163.html
MySql创建视图
(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下建立视图,反之亦然;
三、基于不同服务器
这种情况稍微麻烦一点,需要先建立一个远程表来访问远程服务器的数据表,然后再对这个刚建立的远程表和本地表进行视图,步骤如下:
1、查看MySql是否支持federated引擎
(1).登录Mysql;
(2).mysql>show engines;
(3).如果显示为no,在配置文件中添加:federated (在my.ini),重新启动mysql服务。
2、创建远程表
mysql>CREATE TABLE federated_table (
id INT(20) NOT NULL AUTO_INCREMENT,
name VARCHAR(32) NOT NULL DEFAULT '',
other INT(20) NOT NULL DEFAULT '0',
PRIMARY KEY (id)
)
ENGINE=FEDERATEDDEFAULT
CHARSET=utf8
CONNECTION='mysql://fed_user@remote_host:9306/federated/test_table';
CONNECTION可以按如下方式进行配置:
(1).CONNECTION='mysql://username:password@hostname:port/database/tablename'
(2).CONNECTION='mysql://username@hostname/database/tablename'
(3).CONNECTION='mysql://username:password@hostname/database/tablename'
3、建立视图
create view 本地数据库.v as (select * from 本地数据库.table1) union all (select * from 远程数据库.test_table);
- MYSQL 视图创建
- mysql 创建视图
- mysql创建视图
- 39、MySQL-视图创建
- Mysql 创建查询视图
- MySQL创建视图详解
- mysql 视图创建
- MySQL创建View视图
- mysql创建视图
- mysql 创建视图
- MySql创建视图
- 【mysql 视图】Mysql视图的创建
- MySQL数据库视图:视图定义、创建视图、修改视图
- MySql下视图的创建
- 学习mysql(2),视图创建
- mysql中创建视图、索引
- MySql下视图的创建
- mysql创建视图(navicat)
- Matlab安装MinGW-w64编译器
- 网站访问速度测试
- mysql跟踪日志
- Tampermonkey 百度网盘助手 [windows]
- lua 小技巧
- MySql创建视图
- Oracle的Blob类型转String
- go 多线程获取url返回码
- js 输入年月得出当月多少天
- JavaIO
- 技术大神些,谁知道qq邮箱不能接收是怎么一回事。
- 大型网站架构系列:负载均衡详解(2)
- Map 和 IO流
- git中误提交了不想提交的文件,想要从版本库中删除的方法