共計(jì) 1706 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。
這篇文章主要介紹了 MySql 連接查詢的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。
MySql 連接查詢精解
出于對(duì)知識(shí)的總結(jié)和分享,對(duì)常見(jiàn)的查詢做了練習(xí)和總結(jié)。
數(shù)據(jù)準(zhǔn)備,包括兩個(gè)表,tuser 和 ttable。tuser 和 ttable 為 1 對(duì)多關(guān)系。
tuser 表結(jié)構(gòu)如下:
名稱 www.2cto.com
類型
備注
id
Integer
主鍵
name
Varchar(50)
用戶名稱
password
Varchar(50)
用戶密碼
Sex
Varchar(20)
用戶性別
ttable 表機(jī)構(gòu)如下:
名稱
類型
備注
id
Integer
主鍵
name
Varchar(50)
名稱
userid
Integer
用戶 id
建表語(yǔ)句:
[sql]
span > 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ù)語(yǔ)句
[sql]
span >Insert into tuser(id, name, password,sex)values(2, rsquo; 中文 rsquo;, rsquo; 測(cè)試 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)為基礎(chǔ),滿足條件數(shù)據(jù)全部查詢出來(lái),右表 (tuser) 不滿足條件出現(xiàn) null 補(bǔ)齊
2、右外連接
select * from ttable t right join tuser u on t.userid=2 and t.userid=u.id 出現(xiàn)如下結(jié)果: www.2cto.com
以右表為基礎(chǔ)(tuser)滿足條件的數(shù)據(jù)全部查詢出來(lái),左表 (ttable) 不滿足條件出現(xiàn) null 補(bǔ)齊
3、內(nèi)連接
select * from ttable,tuser; 出現(xiàn)結(jié)果如下:
以笛卡爾積的方式展現(xiàn)。設(shè) A、B 為集合,用 A 中的元素 x 作第一元素,B 中的元素 y 作第二元素,構(gòu)成有序?qū)Γ羞@樣的有序?qū)M成的集合,叫做 A 和 B 的笛卡兒積,記做 A times;B。
在中,設(shè)有關(guān)系 A 為 學(xué)號(hào)、姓名,具體內(nèi)容為 {1, 張三 , 2,李四};關(guān)系 B 為 學(xué)號(hào)、年齡,具體內(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} 這樣,通過(guò)關(guān)系代數(shù)的三個(gè)運(yùn)算,我們查到了每個(gè)人的年齡。
感謝你能夠認(rèn)真閱讀完這篇文章,希望丸趣 TV 小編分享的“MySql 連接查詢的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持丸趣 TV,關(guān)注丸趣 TV 行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!