五 . 连接查询

连接查询

在程序猿的实际开发中,我们多数情况下是从多张表中进行联合查询,取出最终结果,这就得要求我们继续来学习SQL语句中的的连接查询。

分类

1. 内连接

  • 等值连接 (存在等量关系)

特点:表之间存在等量关系。

select 字段1,字段2,...
from1 
join2
on 连接条件;
  • 非等值连接 (between…and…)

特点:连接条件中的关系是非等量关系。

select 字段1,字段2,...
from1
join2
on 条件(between...and...);
  • 自连接 (将一张表看作两张表)

特点:将一张表看作两张表,自己连接自己。

涉及到一个小的技巧:给表起别名。

select 字段1,字段2,...
from1 x (给表1起的别名)
join1 y (给表1起的另一个别名)
on 条件;

2. 外连接

在表的内连接之中,表与表之间是平等关系,没有主副之分。而在外连接之中,表之间有主副之分。而我们主要查询的是主表中的数据,如果副表的数据没有与主表的数据匹配上,副表自动匹配null值。左(右)连接有右(左)连接的写法。

特点:将主表的数据全部查询出来。

  • 左外连接:表示左边的表是主表。

写法一:

select 字段1,字段2,...
from1 x(主表)
left join2 y
on 条件;

写法二:

select 字段1字段2
from2 y
right join1 x(主表)
on 条件;
  • 右外连接:表示右边的表是主表。
三张表以上的连接查询
select 字段1,字段2,字段3,...
from1 x
join2 y
on 条件1
join3 z
on 条件2;

博主突然想插一句,SQL其实就是在学习:insert,delete,update,select,不难加油!

union
可以将查询到的结果集相加。

select 字段1
from1
where 条件1
union
select 字段2
from2
where 条件2

注意:查询到第一个的结果集与第二个结果集列数必须相同,否则会报错。

limit分页查询
取结果集中的部分数据。

在分页中每页显示n条数据,则第p页起始位置为n(p-1).

select
from
limit 0,5 
(从第1个开始,取前5名数据)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值