溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySql連接查詢的示例分析

發(fā)布時間:2022-01-14 16:36:20 來源:億速云 閱讀:119 作者:小新 欄目:數(shù)據(jù)庫

這篇文章主要介紹了MySql連接查詢的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

MySql連接查詢精解
 
出于對知識的總結(jié)和分享,對常見的查詢做了練習和總結(jié)。
數(shù)據(jù)準備,包括兩個表,tuser和ttable。tuser和ttable為1對多關系。
tuser表結(jié)構(gòu)如下:
名稱  www.2cto.com  
類型
備注
id                                                                       
Integer                                                     
主鍵                                                         
name
Varchar(50)
用戶名稱
password
Varchar(50)
用戶密碼
Sex
Varchar(20)
用戶性別
 
ttable表機構(gòu)如下:
名稱
類型
備注
id                                                                       
Integer                                                     
主鍵                                                          
name
Varchar(50)
名稱
userid
Integer 
用戶id
 
建表語句:
[sql] 
<span style="font-size:18px;">Create table tuser(id Integer primary key,  
                   name varchar(50),  
               password varchar(50),  
                   sex  varchar(20)  
                   );  
Create table ttable(id Integer primary key,  
               name varhcar(50),  
                   userid Integer  
);    www.2cto.com  
</span>  
 
 
插入數(shù)據(jù)語句
[sql] 
<span style="font-size:18px;">Insert into tuser(id, name, password,sex)values(1,&rsquo;中文&rsquo;,&rsquo;測試&rsquo;,&rsquo;m&rsquo;);  
Insert into tuser(id, name, password,sex)values(2,&rsquo;中文&rsquo;,&rsquo;測試&rsquo;,&rsquo;m&rsquo;);  
  
Insert into ttable(id,name, userid)values(1,&rsquo;1&rsquo;,1);  
Insert into ttable(id,name, userid)values(2,&rsquo;2&rsquo;,2);  
Insert into ttable(id,name, userid)values(3,&rsquo;2&rsquo;,2);  
</span>  
 
1、  左外連接
select * from ttablet left join tuser u on t.userid=2 and t.userid=u.id;結(jié)果如下:

 
以左側(cè)表(ttable)為基礎,滿足條件數(shù)據(jù)全部查詢出來,右表(tuser)不滿足條件出現(xiàn)null補齊
 
2、右外連接
 select * from ttable t right join tuser u on t.userid=2 and t.userid=u.id出現(xiàn)如下結(jié)果:  www.2cto.com  

 
以右表為基礎(tuser)滿足條件的數(shù)據(jù)全部查詢出來,左表(ttable)不滿足條件出現(xiàn)null補齊
 
3、內(nèi)連接
select * from ttable,tuser;出現(xiàn)結(jié)果如下:

 
以笛卡爾積的方式展現(xiàn)。設A、B為集合,用A中的元素x作第一元素,B中的元素y作第二元素,構(gòu)成有序?qū)?,所有這樣的有序?qū)M成的集合,叫做A和B的笛卡兒積,記做A&times;B。 
在中,設有關系A為 <學號、姓名> ,具體內(nèi)容為{ <1,張三> , <2,李四> };關系B為 <學號、年齡> ,具體內(nèi)容為{ <1,20> <2,22> }。 
則A&times;B={ <1,張三,1,20> , <1,張三,2,22> , <2,李四,1,20> , <2,李四,2,22> } 
如果再做第一列=第三列的選擇,再做只保留第一、第二、第三列的投影,即得{ <1,張三,20> , <2,李四,22> }這樣,通過關系代數(shù)的三個運算,我們查到了每個人的年齡。
 

感謝你能夠認真閱讀完這篇文章,希望小編分享的“MySql連接查詢的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業(yè)資訊頻道,更多相關知識等著你來學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI