查询的列不在同一表中必须使用连接内连接,外链接

-- 输出学生姓名以及对应的年级名称

内连接
select studentName,gradeName
from student inner join grade
on student.gradeId=grade.gradeId

隐式内连接
select studentName,gradeName from
student,grade
where student.gradeId =gradeID

左外连接查询
以left join左边的表为准,右表没有的数据返回null

select studentName ,gradeName
from student left join grade
on student.gradeId=grade.gradeId

右外连接查询
以left join右边的表为准,左表没有的数据返回null

select studentName ,gradeName
from student left join grade
on student.gradeId=grade.gradeId

-- 查询考试课程编号为1 的学生姓名,以及年级名称和科目名称以及成绩

select studentName ,gradeName ,subjectName ,studentResult
from student s,grade g, subject b,result r
where s.studentId=r.studentId,
and r.subjectNO=b.subjectNo,
and g.gradeId=s.gradeId ,
and g.gradeId=b.gradeId ,
and b.subjectNo=1

临时表:只在当前连接可见,当这个连接关闭时,会自动ry删除,不会占用数据库空间。修改临时表数据不会影响原来表数据,因此如希望 验证某些修改表后的查询,又不想更改原表内容时,可以使用临时表备份原表数据,在临时表上做数据验证,当连接关闭后,系统会自动删除临时表。
create temporary table 表名 (查询语句);

自连接:
把一个表当成多个表来使用,关键是使用别名。
例 1

name      bumen     zhiwu
张三      市场       员工
李四      销售       经理
王五      市场      经理

使用自连接的方式 查询员工所在的 部门 经理 的 姓名

select name from table where bumen =(
select bumen from table where name='张三'
) and zhiwu='经理'

例 2

teacher 表
id       name         tid
1         导师1
2         导师2
3         老师1         1
4         老师2         1
5         老师3         2

---查询老师3的姓名和对应的 导师姓名

t1 老师    t2 导师
select t1.name as 老师名 ,t2.name as 导师名
from teacher t1, teacher t2
where t1.tid=t2.id
and t1.name='老师3'

例 3
name     class      socre
黑1       1           89
黑2       1           6
黑3       1           90
白1       2           34
白2       2           27
白3       2           72

a.查询分数前三名
b.找出前三名并输出

a. select * from table
order by socre desc
limit 0,3

b. select * from table t1
where (
select count (1) from table t2
where t1.socre <t2.socre
and t1.class=t2.class
)<3
order by class ,socre desc

mysql03的更多相关文章

  1. MySQL-03 SQL语句设计

    学习要点 SQL语句分类 DML语句 DML 查询语句 SQL语句分类 数据操纵语言(DML):用来操纵数据库中数据的命令.包括:SELECT.INSERT.UPDATE.DELETE. 数据定义语言 ...

  2. 极客mysql03

    1.务的特性:原子性.一致性.隔离性.持久性 2.多事务同时执行的时候,可能会出现的问题:脏读.不可重复读.幻读 3.事务隔离级别:读未提交.读提交.可重复读.串行化 4.不同事务隔离级别的区别: 读 ...

  3. mysql之 mysql 5.6不停机双主一从搭建(活跃双主一从基于日志点复制)

    环境说明:版本 version 5.6.25-log 主1库ip: 10.219.24.25主2库ip: 10.219.24.22从1库ip:10.219.24.26os 版本: centos 6.7 ...

  4. nginx之 nginx虚拟机配置

    1.配置通过域名区分的虚拟机[root@mysql03 nginx]# cat conf/nginx.confworker_processes 1; events { worker_connectio ...

  5. nginx之 nginx-1.9.7 + tomcat-8.5.15 反向代理+应用负载均衡 安装配置

    环境说明:nginx 反向代理服务器 ip 为: 10.219.24.26tomcat1 应用服务器 ip 为: 10.219.24.21tomcat3 应用服务器 ip 为: 10.219.24.2 ...

  6. nginx之 nginx + tomcat + redis 负载均衡且session一致性

    说明: 本文描述的是 nginx + tomcat + redis 实现应用负载均衡且满足session一致性,从安装到配置的全部过程,供大家学习!nginx 代理服务器ip: 10.219.24.2 ...

  7. Nginx+Keepalived 主备高可用 安装与配置

    环境说明:操作系统:CentOS6.7 x86_64Nginx版本:nginx-1.9.7Keepalived版本:keepalived-1.2.24 主nginx + Keepalived :10. ...

  8. mysql+keepalived 双主热备高可用

    理论介绍:我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互 ...

  9. mysql5.7-Group Replication

    什么是Group Replication 基于组的复制(Group-based Replication)是一种被使用在容错系统中的技术.Replication-group(复制组)是由能够相互通信的多 ...

随机推荐

  1. 20165236 2017-2018-2《Java程序设计》课程总结

    20165236 2017-2018-2<Java程序设计>课程总结 一.每周作业链接汇总: 1.我期望的师生关系 2.学习基础和C语言基础调查 3.20165236郭金涛 预备作业3 L ...

  2. Openresty 安装第三方插件

    Openresty 安装第三方插件 程序媛没有夜生活 2016.08.02 15:33* 字数 167 阅读 1283评论 0喜欢 2 在安装之前,我们先来看一下我们现有的模块. 1.将需要安装的插件 ...

  3. ELK(上)

    什么是ELK: ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件.新增了一个FileBeat,它是一个轻量级的日志收集处理工 ...

  4. sjw-风评评测-定位页面元素

    一.手工标准化操作流程: 1.登录系统 2.登录后的页面点击:账户设置 3.点击“重新评测”,进入到风险评测页面 4.答完8道题 5.勾选条件checkbox 6.点击“提交” 提交后的页面 二.自动 ...

  5. iOS 新浪微博-4.0 OAuth授权

    申请开发者 想要拉到到新浪微博的数据,首先让自己成为开发者.申请成为开发者账号很简单,只要有新浪微博的账号即可. 申请地址:http://open.weibo.com/ 在开发的过程中,我们需要拿到几 ...

  6. eclipse的调试模式以及断点运行

    先在代码序号处打个点. 点击debug调试模式 然后再点击 如果有打断点,则会在断点处结束,如果没有,会一直一步一步向下直至结束.

  7. node.js初识01

    1.对于node.js的安装在这里就不做过多的介绍了,安装成功后,可以通过cmd 输入node -v查看node的版本号,如图所示 2.开始我们的hello world,通过cmd进入所属文件夹,输入 ...

  8. Hibernate框架的第四天

    ## Hibernate框架的第四天 ## ---------- **回顾:Hibernate框架的第三天** 1. 一对多关联关系映射 * JavaBean的编写 * 编写映射的配置文件 * 使用级 ...

  9. Oracle 23的用户管理

    创建用户的语法格式 Create user <user_name> Identified by<password> Default tabespace<default t ...

  10. JavaScript三种判断语句和三元运算符

    三种判断语句 1.if结构 语法:if(条件){条件满足时执行的代码块} 2.if else结构 语法:if(条件){条件满足时执行的代码块}   else{条件不满足时执行的代码块} 3.if el ...