实用sql查询语句详解2:高级查询

上篇文章《实用sql查询语句详解1:给列取别名、查询部分行、多列排序》介绍了简单查询语句,这节课给大家讲解基本条件查询、集合函数、分组查询、子查询、并集和交集

基本条件查询

比较运算符:>,>=,<,<=,=,!=

between a and b,in(a,b,c),not exists,is null,like ‘%_’,or,and, any,all等

between…and 和not between and

把某一字段中内容在特定范围内的记录查询出来。

例如查询成绩在60到80分的学生信息:

SELECT StudentID, Score FROM SCore WHERE Score BETWEEN 60 AND 80

in(a,b,c)

把某一字段中内容与所列出的查询内容列表匹配的记录查询出来

SELECT SName AS 学员姓名,SAddress As 地址 FROM Students WHERE SAddress IN ('北京','广州','上海')

模糊查询 like

通配符有%、_、[ ]、[^]

%:后面可以跟零个或多个字符

_:匹配任意单个字符

[ ]:查询一定范围内的单个字符,包括两端数据

[^]:表示不在一定范围内的单个字符,包括两端数据

例:查询姓熊的员工并且名字只有两个字的员工信息

实用sql查询语句详解2:高级查询

例:查询年龄在23-27周岁的员工信息

实用sql查询语句详解2:高级查询

集合函数 -sum,count,max,min,avg

SELECT AVG(SCore) AS 平均成绩, MAX (Score) AS 最高分,MIN (Score) AS 最低分 From Score WHERE Score >=60

分组查询—GROUP BY

group by 字段名 having 组过滤条件

SELECT CourseID, AVG(Score) AS 课程平均成绩
FROM Score
GROUP BY CourseID

分组查询多列分组

SELECT StudentID AS 学员编号,CourseID AS 内部测试, AVG(Score) AS 内部测试平均成绩
FROM Score
GROUP BY StudentID,CourseID

分组查询—HAVING

SELECT StudentID AS 学员编号,CourseID AS 内部测试, AVG(Score) AS 内部测试平均成绩
FROM Score
GROUP BY StudentID,CourseID
HAVING COUNT(Score)>1

分组查询对比

  1. WHERE子句从数据源中去掉不符合其搜索条件的数据
  2. GROUP BY子句搜集数据行到各个组中,统计函数为各个组计算统计值
  3. HAVING子句去掉不符合其组搜索条件的各组数据行
SELECT       部门编号, COUNT(*)
FROM          员工信息表
WHERE       工资 >= 2000
GROUP BY 部门编号
HAVING       COUNT(*) > 1

逻辑运算符(NOT、AND、OR)

NOT:取反;
AND:逻辑与;
OR:逻辑或;

例:利用AND查询Employee表中的年龄小于30岁的所有女员工 的信息;

实用sql查询语句详解2:高级查询

例;利用NOT查询年龄不小于30岁的所有女员工的信息

实用sql查询语句详解2:高级查询

例:利用组合查询年龄不大于40的男员工信息或年龄大于30的女员工信息;

实用sql查询语句详解2:高级查询

子查询

SELECT * FROM BOOKS B WHERE B.PRICE IN (SELECT MAX(PRICE) FROM  BOOKS);

并集(Union)和交集(Intersect)

(SELECT * FROM BOOKS B, BORROW C
WHERE B.BNO=C.BNO AND B.BNAME = '计算方法'
INTERSECT
SELECT * FROM BOOKS B, BORROW C
WHERE B.BNO=C.BNO AND B.BNAME != '计算方法习题集')
ORDER BY C.CNO DESC;

本文来自投稿,不代表125jz立场,如若转载,请注明出处:http://www.125jz.com/1090.html

(0)
江山如画的头像江山如画管理团队
实用sql查询语句详解1:给列取别名、查询部分行、多列排序
上一篇 2018年2月5日 上午9:36
网页设计常用色彩搭配表《配色表》
下一篇 2018年2月5日 下午3:17

99%的人还看了以下文章

  • Undefined variable: file python3不再支持file函数

    python处理文件时,使用file函数,提示错误:Undefined variable: file 反复查看语法,没有问题啊,最后查找到原因: python3不再支持file函数 替代方法:可以用open代替file 函数。

    2019年3月29日
    9.2K0
  • HTTP错误 403.14 服务器配置为不列出此目录内容

    HTTP错误 403.14 服务器配置为不列出此目录内容HTTP错误 403.14 服务器配置为不列出此目录内容HTTP错误 403.14 服务器配置为不列出此目录内容HTTP错误 403.14 服务器配置为不列出此目录内容

    开发一个企业网站,使用ASP技术,在本地通过IIS管理器调试,出现 如下问题: HTTP 错误 403.14 – Forbidden Web 服务器被配置为不列出此目录的内容 解决方法: 在”功能视图“,中找到”目录浏览“,双击进入 在目录浏览右侧操作中选择”启用“! 这时再浏览网站,可以看到已经不报错了,但是网站是以文件目录的形式展现的! 这是…

    2018年7月3日 编程开发
    5.6K0
  • 一文让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法?(精)

    前面分享过《深度学习中的激活函数、防止过拟合的方法》、《最清楚的过拟合(Overfitting)、欠拟合讲解》,今天给125建站网再给大家梳理一下,让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法? 欠拟合与过拟合 欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况; 过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛…

    2023年1月16日
    4.2K0
  • %matplotlib inline使用详解

    #内嵌画图 %matplotlib inline import matplotlib # 注意这个也要import一次 import matplotlib.pyplot as plt myfont = matplotlib.font_manager.FontProperties(fname=r’C:/Windows/Fonts/msyh.ttf’) # 这一…

    2023年1月13日
    2.9K0
  • python 实战-逢7 过游戏的实现

    不知道你有没有玩过“逢 7 过”的游戏,游戏规则很简单: 几个人轮流报数,凡遇到 7 的倍数,或含 7 的数字就要跳过,否则就算失败。 今天我们就用 Python 来打印 1 到 100 之间,所有满足条件的数字。 知识点 Python 开发环境 int 类型 变量 运算符 while 循环 条件判断 💡提示: 开发中,我们经常要先构思框架,…

    2022年2月2日
    11.7K0
  • 表单method方式为post或get中文乱码的解决方法

    表单method方式为post中文乱码解决方法 ■设置请求和响应的编码方式 request.setCharacterEncoding(“utf-8”); response.setCharacterEncoding(“utf-8”); 表单method方式为get中文乱码解决方法 ■治标的方法: new String(s.getBytes(”iso-8859-…

    2019年12月17日
    9.5K0

发表回复

登录后才能评论