MySQL数据库数据查询

表数据查询
单表查询完整语法 (按照顺序先后)
select
字段列表
from
表名
where
条件
group by
分组字段
having
分组后的条件l
order by
排序
select * from 表名 查询表所有数据
select 列名1,列名2… from 表名 查询指定列数据
select distinct 列名1,列名2… from 表名 去重复查询指定列的数据
select 列名1 运算符(±*/) 列名2… from 表名 查询指定列在原有基础上运算
select ifnull(列名,数字) 运算符 from 表名

​ 将指定列为空的数据换算成输入的数字参与运算
select 列名 as 别名 from 表名 在查询时将列名用as代替(as可以省略)

条件查询
select 列名 from 表名 where 条件 在指定条件内查询列
条件常用单词
列 条件1 or 条件2 or 条件3… 查询多个条件
列 条件1 and 条件2 查询条件只有两个
列 between 数字 and 数字 两个数字范围之内(包含两个数字)
列 in(数据1,数据2…) 查询同列多个数据
列 not in (数据1,数据2…) 查询同列不包含指定数据
列 is null 查询列为空
列 is not null 查询条件不为空
模糊查询
列 like ‘任意字符’
_单个任意字符
%任意个任意字符 模糊查询带指定字符的列

聚合函数查询
select 函数名(列名) from 表名 where 条件
函数
count 统计个数
max 最大值
min 最小值
avg 平均值
sum 求和

排序查询
select * from 表名 where 条件 order by 列名 asc 升序排序(默认升序,可省略asc)
select * from 表名 where 条件 order by 列名 desc 降序排序(不可省略desc)
select * from 表名 where 条件 order by 列名 asc,列名2 desc 组合使用升降序,用逗号隔开

分组查询
select * from 表名 group by 列名 having 分组后的条件 按列名相同的值进行分组
注意:

	1. 分组查询查询的字段一般为分组字段和聚合函数
	2. where是在分组进行过滤。不满足条件的不参与分组。having是在分组后对数据进行过滤。
     where后面不能跟聚合函数条件,聚合函数条件只能跟在having关键字后

分页查询
limit (mysql专用)
select * from 表名 limit 起始记录,每页显示条数 显示指定页数的数据
公式:
起始记录=(指定页数-1)*每页显示条数

多表查询
内连接
显式内连接
select * from 表名1 join 表名2 on 条件 …
隐式内连接
select * from 表名1,表名2 where t 条件 …
外连接
左外连接
select * from 左表名 left join 右表名 on 条件 显示左表的全部
右外连接
select * from 左表名 right join 右表名 on 条件 显示右表的全部

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值