mysql高效的視圖查詢及mysql高效的多表連接查詢

mysql高效的視圖查詢及mysql高效的多表連接查詢mysql

在開發項目的時候用到mysql的視圖 創建的視圖時要鏈接多表鏈接查詢並顯示出數據 創建的過程是這樣的sql

表Aspa

 CREATE TABLE A(開發

 

 id int auto_increment UNIQUE  not null, -- id流水號rem

 AA varchar(100),   table

 BsID INT  --對應B表的id值 效率

)select

 alter table  A   add primary key(ID);im

表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秒鐘的時間就完成了查詢。

相關文章
相關標籤/搜索