javaJava程序员

mysql跨库关联查询(创建视图)

2018-12-28  本文已影响9人  挑战者666888

一、 前言

SQL CREATE VIEW 语句
什么是视图?
在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。
视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。

二、使用场景:

我们使用的场景是:我们使用的是微服务架构,考虑的是模块划分,分为了业务配置服务,基础服务,业务服务等模块,数据库也进行了拆分,不同的模块使用不同的数据库。由于微服务的划分,导致,一些查询,需要跨模块表与表之间的关联查询,设计到跨库。

三、跨库创建视图语法:

创建视图:
 create view   视图名称 as ( SELECT 库名.表名.列名 AS 列的重命名..... FROM 库名.表名)
删除视图:
drop view 视图名称
注意:数据库必须在同一个服务器上。两个库用户名和密码需要相同。

四、跨库创建视图语句:

CREATE ALGORITHM=UNDEFINED DEFINER=root@localhost SQL SECURITY DEFINER VIEW ray_gt_business_project_document_view AS (select d.id AS id,d.form_id AS form_id,d.invest_id AS invest_id,d.invest_name AS invest_name,d.project_stage_id AS project_stage_id,d.project_stage_name AS project_stage_name,d.is_use AS is_use,d.remark AS remark,d.is_deleted AS is_deleted,b.file_name AS file_name,b.file_type AS file_type,b.is_require AS is_require from (rayootech_business.ray_business_project_document d join rayootech_business.ray_business_project_document_branch b on((d.id = b.project_document_id))))

五、执行结果:

image.png

跨库创建视图成功:

image.png

注:欢迎留言,沟通学习,共同进步。

上一篇下一篇

猜你喜欢

热点阅读