MYSQL基本使用三(分页和连接查询)

MYSQL 基本操作

分页

当数据量过大时,在一页中查看数据非常麻烦, 可以使用分页来优化

语法:
select * from limit 开始值,数据条数
例子:

在学生表内查询前三行的男生成绩

select * from students where gender=1 limit 0,3;

连接查询

当需要查询的数据来源于多张表 , 那么则要将多张表连接成一个打的数据集合 , 然后再选择合适的返回

查询类型:

mysql 支持三种连接查询类型:

  1. 内连接查询 : 查询的结果为两个表匹配到的数据
内连接查询语法 :
select * from 表1 inner join 表2 on 表1.列名1=表2.列名1

查询到的结果:两个表共同拥有的数据

  1. 左连接查询 : 查询的结果为两个表匹配到的数据和左表特有的数据 , 右表中有而左表没有的数据用null填充
左连接查询语法:
select * from 表1 left join 表2 on 表1.列名1=表2.列名1

查询到的结果:两个表共同拥有的数据和左表特有的数据

  1. 右连接查询 : 查询的结果为两个表匹配到的数据和右表特有的数据 , 左表中有而右表没有的数据用null填充
右连接查询语法:
select * from 表1 right join 表2 on 表1.列名1=表2.列名1

查询到的结果 : 两个表共同拥有的数据和右表特有的数据

自关联:

自关联就是同一张表 , 用内连接查询连接两张表 , 做到表内查询

自关联语法:
select * from 表1 inner join 表1 on 条件

子查询:

子查询的定义: 子查询就是 在一个select语句中嵌入的另一个select语句

主查询: 主查询是 主select,不是被嵌入的那一个

主查询和子查询的关系:
  • 子查询被嵌入在主查询中

  • 子查询一般是充当条件 , 或是充当主查询的数据源

  • 子查询是一张表,可以独立存在输出

子查询的分类:
  1. 标量子查询 : 返回的表是一个一行一列的数据

|列名|

|数据|

  1. 列子查询 : 返回的表是一个一列多行的数据

|列名|

|数据|

|数据|

  1. 行子查询: 返回的结果是一行多列的数据

|列名| |列名|

|数据| |数据|

总结:

查询的完整格式:

select 列名 from 表 [where 条件 ][group by 分组的列名 having 条件] order by 排序依据 升序/降序 
 limit 开始值,数据条数

列名 from 表 [where 条件 ][group by 分组的列名 having 条件] order by 排序依据 升序/降序
limit 开始值,数据条数




























  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值