您好,登錄后才能下訂單哦!
這篇文章主要介紹了MySql連接查詢的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
MySql連接查詢精解
出于對知識的總結和分享,對常見的查詢做了練習和總結。
數據準備,包括兩個表,tuser和ttable。tuser和ttable為1對多關系。
tuser表結構如下:
名稱 www.2cto.com
類型
備注
id
Integer
主鍵
name
Varchar(50)
用戶名稱
password
Varchar(50)
用戶密碼
Sex
Varchar(20)
用戶性別
ttable表機構如下:
名稱
類型
備注
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>
插入數據語句
[sql]
<span style="font-size:18px;">Insert into tuser(id, name, password,sex)values(1,’中文’,’測試’,’m’);
Insert into tuser(id, name, password,sex)values(2,’中文’,’測試’,’m’);
Insert into ttable(id,name, userid)values(1,’1’,1);
Insert into ttable(id,name, userid)values(2,’2’,2);
Insert into ttable(id,name, userid)values(3,’2’,2);
</span>
1、 左外連接
select * from ttablet left join tuser u on t.userid=2 and t.userid=u.id;結果如下:
以左側表(ttable)為基礎,滿足條件數據全部查詢出來,右表(tuser)不滿足條件出現null補齊
2、右外連接
select * from ttable t right join tuser u on t.userid=2 and t.userid=u.id出現如下結果: www.2cto.com
以右表為基礎(tuser)滿足條件的數據全部查詢出來,左表(ttable)不滿足條件出現null補齊
3、內連接
select * from ttable,tuser;出現結果如下:
以笛卡爾積的方式展現。設A、B為集合,用A中的元素x作第一元素,B中的元素y作第二元素,構成有序對,所有這樣的有序對組成的集合,叫做A和B的笛卡兒積,記做A×B。
在中,設有關系A為 <學號、姓名> ,具體內容為{ <1,張三> , <2,李四> };關系B為 <學號、年齡> ,具體內容為{ <1,20> <2,22> }。
則A×B={ <1,張三,1,20> , <1,張三,2,22> , <2,李四,1,20> , <2,李四,2,22> }
如果再做第一列=第三列的選擇,再做只保留第一、第二、第三列的投影,即得{ <1,張三,20> , <2,李四,22> }這樣,通過關系代數的三個運算,我們查到了每個人的年齡。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“MySql連接查詢的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。