Mysql查询(笔记二)
1.两结构相同的表数据间移植
Inset into 表一
Select 字段1,字段2,....字段n from表二
建立数据库时设置数据库编码
create database 数据库名 charset uft8
模糊查询时
%(任意字符任意个数)
_(单个字符)
2.聚合函数使用时必须有group by给定分组条件
比如有一个表

求平均成绩是用聚合函数avg()时必须制定此函数作用的范围依据
3.分组,排序,再次筛选,取几条执行顺序
Where>group by >having>order by >limit
门及2门以上同学的平均分和不及格科目数
方法一:分步查询
先查出2门及2门以上不及格学生是谁
然后再查这些同学的平均分,需要2个select语句
select name from stu where score<60 group by name having count(name)>=2
便得到表
|
name |
|
张三 |
|
李四 |
注意sql的执行顺序
先执行select name from stu where score<60
会得到表2:
|
name |
|
张三 |
|
张三 |
|
李四 |
|
李四 |
|
王五 |
之后再分组和再筛选
但要注意虽然group by在having前,但group by是作为having的筛选分组条件的
然后在表2中having筛选即得
第二步:
找到这些学生后,在把学生名最为查询条件再次筛选,因为第一步筛选掉了及格的了的成绩,结果破坏了数据的原始性,所以还得进行一次筛选
select name,avg(score) from stu where name in (select name from stu where
score<60 group by name having count(name)>=2) group by name;
方法二:利用select后可以直接是判断式及本题特点
分析:首先运行sql查询
select name ,score<60 from stu;
得到下表3:
|
name |
Score<60 |
|
张三 |
0 |
|
张三 |
1 |
|
张三 |
1 |
|
李四 |
1 |
|
李四 |
1 |
|
王五 |
1 |
在select后的字段或条件mysql会依次与表中的数据对比,如score<60会拿60逐一与表中的score值比较
比如字段name没有要比较的值就显示它在表中的值
从表三发现:sum(score<60)的值就是不及格科目数
于是
select name ,avg(score),sum(score<60) as gk from stu group by name having
gk>=2;
聚合函数的执行时同时进行
得到结果表:

显然方法二比一更简洁高效
未完待续....!
Mysql查询(笔记二)的更多相关文章
- MySQL学习笔记(二)—查询
一.多表连接查询 新建两张表t_user.t_order. 1.内连接 返回满足条件的所有记录. (1)显式内连接 使用inner join关键字,在on ...
- MySQL学习笔记(二):MySQL数据类型汇总及选择参考
本文主要介绍了MySQL 的常用数据类型,以及实际应用时如何选择合适的类型. ******几个通用的简单原则:******* 1. 更小的通常更好.但是要确保没有低估需要存储的值的范围,如果无法确定 ...
- MySQL学习笔记(二)
连接与断开服务器 应该以下面的方式连接MySQL服务器,而不是将密码以明文方式输入连接. C:\> mysql -h host -u user -pEnter password: ******* ...
- MySQL数据库笔记二:数据类型及数据库操作
三.MySQL数据库数据类型 MySQL数据库中支持多种数据类型:数值型.字符型.日期型 常用的数据类型: 1.整型 int:整形,存储整数 int(M):M表示预期值.与存储大小和数值的范围无关. ...
- sql分类及基本sql操作,校对规则(mysql学习笔记二)
sql针对操作对象分为不同语言 数据操作(管理)语言 DML或者将其细分为 ( 查询 DQL 管理(增,删,改) DML) 数据定义语言(对保存数据的格式进行定义) DDL 数据库控制语言(针对数 ...
- MySQL学习笔记二
Ø function 函数 函数的作用比较大,一般多用在select查询语句和where条件语句之后.按照函数返回的结果, 可以分为:多行函数和单行函数:所谓的单行函数就是将每条数据进行独立的计算,然 ...
- mysql学习笔记二 —— 权限体系
要点: 1.MySQL的API2.MySQL的相关文件3.MySQL的权限体系 1.MySQL的API 应用程序接口 (application program interface) 1.1 命令行中的 ...
- MySQL 学习笔记 二
Ø function 函数 函数的作用比较大,一般多用在select查询语句和where条件语句之后.按照函数返回的结果, 可以分为:多行函数和单行函数:所谓的单行函数就是将每条数据进行独立的计算,然 ...
- MySQL学习笔记二:权限管理
1. 创建和删除用户,mysql中的用户是由用户名和主机名来确定的 create user "user_name@host_name" identified by passwd; ...
随机推荐
- go 使用模板函数的例子
代码: package main import ( "bytes" "fmt" "text/template" ...
- C语言实现词频统计——第二版
原需求 1.读取文件,文件内包可含英文字符,及常见标点,空格级换行符. 2.统计英文单词在本文件的出现次数 3.将统计结果排序 4.显示排序结果 新需求: 1.小文件输入. 为表明程序能跑 2.支持命 ...
- C Primer Plus(第五版)1
这是C Primer Plus(第五版)的第一章,上传上来主要是方便我进行做笔记,写注释,还有我会删掉一些“废话”等. 1.1 C语言的起源 贝尔实验室的 Dennis Ritchie 在1972年开 ...
- 100. Same Tree(Tree)
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * Tre ...
- 范式(Oracle)
三范式 ------------数据库的三范式-------------- (1).要有主键,列不可分 (2).不能存在部分依赖:当有多个字段联合起来作为主键的时候,不是主键的字段不能部分依赖于主键中 ...
- 十步让 WebForm项目 变为 Mvc项目
1.创建一个项目名为 App_Asp 的 Asp.NET 空 Web 应用程序2.添加全局应用程序类 Global.asax3.富文本打开 Global,修改 Inherits 为 App_Asp_G ...
- php dirname(__FILE__) 获取当前文件的绝对路径
dirname(__FILE__) 取到的是当前文件的绝对路径,也就是说,比起相对路径,查找速度是最快的. 比如当前文件是放在(d:\www\)下,文件名是test.php. 测试的代码如下: &l ...
- 关于conversation generation的论文笔记
对话模型此前的研究大致有三个方向:基于规则.基于信息检索.基于机器翻译.基于规则的对话系统,顾名思义,依赖于人们周密设计的规则,对话内容限制在特定领域下,实际应用如智能客服,智能场馆预定系统.基于信息 ...
- 将Excel中数据导入数据库(二)
在上篇文章中介绍到将Excel中数据导入到数据库中,但上篇文章例子只出现了nvachar类型,且数据量很小.今天碰到将Excel中数据导入数据库中的Excel有6419行,其中每行均有48个字段,有i ...
- 慕课网-安卓工程师初养成-4-6 Java条件语句之 switch
来源:http://www.imooc.com/code/1358 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试的名次,给予前 4 名不同的奖品.第一名,奖励笔记本 ...