共计 1706 个字符,预计需要花费 5 分钟才能阅读完成。
这篇文章主要介绍了 MySql 连接查询的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让丸趣 TV 小编带着大家一起了解一下。
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 > 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 >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; 结果如下:
以左侧表(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 times;B。
在中,设有关系 A 为 学号、姓名,具体内容为 {1, 张三 , 2,李四};关系 B 为 学号、年龄,具体内容为{1,20 2,22}。
则 A times;B={1, 张三,1,20,1,张三,2,22,2,李四,1,20,2,李四,2,22}
如果再做第一列 = 第三列的选择,再做只保留第一、第二、第三列的投影,即得 {1, 张三,20 , 2,李四,22} 这样,通过关系代数的三个运算,我们查到了每个人的年龄。
感谢你能够认真阅读完这篇文章,希望丸趣 TV 小编分享的“MySql 连接查询的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持丸趣 TV,关注丸趣 TV 行业资讯频道,更多相关知识等着你来学习!