频道栏目
首页 > 数据库 > 其他综合 > 正文
数据操纵语句DML介绍讲解
2018-01-02 09:39:17         来源:biejiyb的博客  
收藏   我要投稿

数据操作语句(DML),包含了SELECT、UPDATE、INSERT、DELETE等语句。下面来详细讲解SELECT的查询操作。

一、选定列

1、查询了所有列,*表示所有列 select * from 表名

2、选择特定列 select 列名,列名... from 表名

3、给列取别名(AS,也可以不用) select 列名 as 别名,列名 as 别名... from 表名

二、选定表中的元组

1、消除取值相同的行(distinct) 查询的列名中去掉所以重复项。 select distinct 列名 from 表名

2、确定范围(between ... and ..) 查询20到30的数据。 select * from 表名 where 列名 between 20 and 30

3、确定集合(IN) select * from 表名 where 列名 IN('计算机','信息管理','口语'

4、字符串匹配(LIKE) _ :下划线匹配一个字符; % :匹配n个字符; [ ] :匹配【】中的任意一个字符; [^ ]:不匹配【】中的任意一个字符; select * from 表名 where 列名 like '[张李]%' //查询列名中以张或李开头的数据 5、空值查询 IS NULL:为空; IS NOT NULL:不为空; select * from 表名 where 列名 is null //查询列名为空的所以数据

6、多重查询(and)

三、对查询结果进行排序

order by 列名 ASC/DESC :对列名中的数据升序或降序排列 Select * from SC where order by Sno desc //对表SC中的Sno列进行降序排列

四、聚合函数

count(*) :统计查询元组的个数; count(distinct 列名):统计本列的个数,distinct去掉重复列; sum(列名):计算列的和; avg(列名) :计算列的平均值; max(列名):计算列的最大值; min(列名) :计算列的最小值; 1、统计SC表中Sno学好为'123'的学生考试总成绩(Grade) select sum(Grade) from SC where Sno = '123'

2、查询SC表中Cno课程中c001课程的最高成绩Grade select max(grade) 最高分,min(grade) 最低分 from SC where Cno='c001'

注意:1、计算返回值得类型是计算列中的类型; 2、聚合函数不能出现在where中;

五、分组统计(GROUP BY)

GROUP BY 分组依据列 HAVING 条件 对分组依据列进行分组,having 表示分组后进行条件判断。

1、统计SC表中每门课Cno的选课人数Sno select Cno 课程号,count(Sno) 选课人数 from SC group by Cno

2、选择SC表中选课门数Cno超过3门的学生学号Sno和选课门数 select Sno,count(*) 选课门数 from SC group by Sno having count(*)>3

注意:1、查询选择的列中只能有聚合函数和分组依据列; 2、当有多个分组依据列是,以最小组为单位进行统计; 3、group by 后只能用having,不能用where; 4、可以在分组前使用where,在进行分组,有利于提高效率;

点击复制链接 与好友分享!回本站首页
相关TAG标签 语句 数据 DML
上一篇:关于jdbc批处理和事务概念与性质的讲解
下一篇:移动端高清、多屏适配方案教程
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站