查询

SELECT [DISTINCT] {*|列名[别名],....}
FROM 表名
[WHERE 过滤条件]
[ORDER BY 列1 ,列2....]






查询操作的分类
-投影操作
制定查询结果中能显示哪些列
-选择操作
制定哪些行出现在结果中
-排序操作
制定查询的结果以什么样的顺序显示




列别名
使用别名 ,在多个同样的列名的时候,使用别名更容易区分.
在列名或表明用AS关键字来提供别名,
SELECT 列A AS A, 列B AS B, 列C AS C FROM 表明 AS T
当使用表的别名是,可以再同一SQL语句中的列名使用别名,例如
SELCLET T.列A AS A ,T.列B AS B,T.列C AS C FROM 表名AS T


返回限定行数查询
select 列1 列2 from t_student LIMIT 开始序号,返回的行数
如果用1个参数 表示从第一行开始返回指定行数的结果
如果用2个参数,则表示从指定行开始。
注意:limit序号从0开始,limit只能用于mysql中。
运算符  含义
= 是否相等
!= 是否不等
^= 是否不等
<> 是否不等
> 大于
>= 大于或等于
< 小于
<= 小于或等于






AND
OR
between and
age in(18,20,22)
age not in(18,20,22)




like 
通配符
_通配符  任何单个字符
%通配符  包含零个或多个任意字符




处理空值数据
不能用=null 应该用 is null 或者is not null
使用任何比较运算符来匹配null得到的都是false比如null=null返回false.


select * from 表 order by 列a,列b,列c


可以对字母数字时间等排序.


ASC 表示升序排序 DESC 表示降序排序 order by默认升序排序




查询SQL的执行顺序
第一步 执行FROM
第二步 where 条件过滤
第三步 执行select投影列
第四步 执行order by排序






聚合函数和分组


聚合函数的分类:                         
COUNT 统计行数量
SUM:获取单个列的合计值
AVG:计算某个列的平均值
MAX:计算列的最大值
MIN:计算列的最小值


select count (计数规范)FROM 表名




* 计算所有选择的行 包括null值
all列 计算指定列的所有非空值行,如果仅仅是指定列 而不带ALL或者DISTINC,这是默认操作
DISTINCT 计算指定列的所有唯一非空值行.去掉重复的记
统计某列合计值
select sum() from 表明;
select sum(all 年龄) from 表明


select sum(age)as '总年龄' ,MAX(age)as '最大年龄' ,MIN(age) as  '最小年龄'
,AVG(age) as '平均年龄' from person;


SQL提供了一种技术,可以将表中的行分组,然后在每个组上应用聚合函数.
select 列A ,聚合函数(聚合函数规范)FROM 表明
where 过滤条件
group by 列A...
分组group by 子句是在where条件过滤后的结果中完成,如果没有where条件则直接对FROM表中的数据进行分组.
GROUP BY会将制定列中有相同数据的分为一组.






select  班级, count(班级) from 学生表 GROUP BY 班级;


having子句
having子句在group by 子句后执行


标准结构
select 列A,聚合函数(聚合函数规范)FROM 表名
where 过滤条件
group by 列A
having 过滤条件




select 班级,avg(年龄) from 学生表
group by 班级
having avg(年龄)>20




二者都是过滤条件,where运行在分组前,因此不能执行任何聚合函数.Having是运行在分组后,只能用作聚合函数的过滤.






SQL执行顺序
FROM
WHERE条件过滤
GROUP BY 分组
SELECT 投影列
HAVING条件过滤
ORDER BY 排序
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值