课程5 DQL(数据查询语言)

一.基本查询

1.查询所有列
select * from 表名 星号表示所有列
2.查询指定列
select 列1,列2… from 表名
3.完全重复的记录只一次,当查询结果中的多行记录一模一样时
select distinct 列1,列2 from 表名

mysql> select id from stu;

4.列运算
Ⅰ.数量类型的列可以做加减乘除运算
select 列*2 from 表名
select 列1+列2 from 表名
select 列1+ifnull(列2,0) from 表名
Ⅱ.字符串类型可以做连续运算
select concat(’$’,列) from 表名
Ⅲ.转换null值
select 列1+ifnull(列2,0) from 表名
Ⅳ.给列起别名
select 列1+ifnull(列2,0) as resul from 表名

二.条件查询

1.普通条件查询

select * from 表名 where 条件
	②select * from 表名 where 列名(数据1,数据2....)

2.模糊查询

select * form 表名 where 列名 like 数据1的片段
select * form stu where name like '李_ _'//以李开头
select * form stu where name like '_ _ _'//三个字名字
select * form stu where name like '% 刚'//以刚结尾
select * form stu where name like '%小%'//带小的

三.排序

select * from stu order by id ASC,age DESC
//对表stu里面的id做升序排列age做降序排列

四.聚合函数

1. select count(*) from stu;//计算列总和
2. select max(id) from stu;//计算列中最大
3. select min(id) from stu;//计算列中最小
4. select sum(id) from stu;//计算列总和
5. select avg(id) from stu;//计算列平均
6. select count(*)人数,sum(age)年龄和,avg(age)平均年龄 from stu;

五.分组查询

1.select sex,count(*),max(id) from stu group by sex;
//通过性别分组
2.select sex,count(*) from stu where age>20 group by sex;
//大于20岁的学生按性别分组
3.select sex,count(*) from stu where age>20 group by sex having count(*) >=2;
//大于20岁的学生按性别分组,并且至少有两个人

六.limit子句

用来查询结果的起始行以及总行数

select * from stu limit 0,2;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值