mysql高效的视图查询_mysql高效的视图查询及mysql高效的多表链接查询

mysql高效的视图查询及mysql高效的多表链接查询

在开发项目的时候用到mysql的视图 建立的视图时要连接多表连接查询并显示出数据 建立的过程是这样的

表A

CREATE TABLE A(

id int auto_increment UNIQUE  not null, -- id流水号

AA varchar(100),

BsID INT  --对应B表的id值

)

alter table  A   add primary key(ID);

表B

CREATE TABLE B(

id int auto_increment UNIQUE  not null, -- id流水号

BsID INT  ,

BB varchar(100))

alter table B add primary key(ID);

建立两表连接查询视图

Drop VIEW if EXISTS  ab_v;

CREATE VIEW ab_v

AS

select A.*,

B.BB  --要求用B的的BB显示

from a A

LEFT OUTER JOIN  a U on A.bsid=b.bsid

这样就实现啦要显示的结果 ,但是当数据到达W级时查询结果极其慢需要20多秒后来我把B表的BsID修改成:

表B

CREATE TABLE B(

id int auto_increment UNIQUE  not null, -- id流水号

BsID INT  ,

BB varchar(100))

alter table B add primary key(ID,BsID);--这句很关键:查询效率立即提高啦20倍就用啦不到1秒钟的时间就完成了查询。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值