【SQL】关于sql多表查询:查询初一一班所有男生的英语成绩
student(学生信息表):
class(班级信息表):
score(学生成绩表):
需求:查询初一一班所有男生的英语成绩
思路:
1.明确查询条件:初一一班, 男生, 英语
2.明确查询结果:成绩
3.明确要查询的表:student, class, score
明确这三点以后,剩下的就是如何将条件组合起来。
试想下,生活中要知道一个学生的某一课程的成绩,首先要明确其班级,然后是其姓名,最后是课程名。
同理,我们可以通过以下步骤来明确sql:
①明确班级:
因为:student表通过class_id 关联class表,
所以:SELECT class_id FROM class WHERE class_name = "初一一班"
==> 获取该班的 class_id,从而和student表建立关联
②明确学生id:
因为:student表通过stu_id 关联 score表,
所以:SELECT stu_id from student where sex = "男" AND class_id = (SELECT class_id FROM class WHERE class_name = "初一一班")
==> 获取该班的 class_id,从而和student表建立关联
③通过学生id,关联到score表,并添加查询条件,课程名,来查询出成绩
SELECT stu.stu_name,sco.score FROM score sco
LEFT JOIN student stu ON sco.stu_id = stu.stu_id
WHERE stu.class_id = (SELECT class_id FROM class WHERE class_name = "初一一班")
AND stu.sex = "男"
AND sco.sub_name = "英语";
【SQL】关于sql多表查询:查询初一一班所有男生的英语成绩相关推荐
- 【SQL】在SQL Server中多表关联查询问题
好久没有写SQL语句的多表连接查询,总在用框架进行持久化操作.今天写了一个多表关联查询,想根据两个字段唯一确定一条数据 失败的案例如下: SELECT cyb.id,ad.name FROM [Gen ...
- sql怎么两个表关联查询
在 SQL 中,我们可以使用 JOIN 关键字来两个表关联查询.例如,假设有两个表:table1 和 table2,并且它们之间有一个关联字段 field1.你可以使用如下的语句来两个表关联查询: S ...
- SQL版本:多表连接查询(两张表为例)
SQL版本: 数据准备: #创建一个数据库company CREATE DATABASE IF NOT EXISTS company;#创建部门表 CREATE TABLE dept(id IN ...
- 使用SQL进行两个表关联查询(inner)
结果显示 公司类型表 公司表 实现方式 SELECTt_company.id,cName, typeName, cDescribe, t_company.modifyTime, t_company.c ...
- SQL语法(五) 多表联合查询
前言 当需要获取的数据分布在多张中,考虑使用联合查询,本章将学习两种查询方式(sql92/sql99) 范例 1.笛卡儿积 将多个表的数据进行一一对应,所得到结果为多表的笛卡尔积.结果的数量为所有表的 ...
- SQL语句多表联合查询
本周之前,对于数据库的使用仅限于简单的增删改查(insert.delete.updata.select),而这一周由于工作需要,对一些sql函数.sql语句多表联合查询.T-SQL语句基本语法.存储过 ...
- SQL多表连接查询(具体实例)
本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图例如以下: 表2:course 截图例如以下: (此时这样建表仅仅是为了演示连接SQL语句.当然实际开发中我们 ...
- SQL多表连接查询(详细实例)
本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图如下: 表2:course 截图如下: (此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表, ...
- postgres sql 多表联合查询_从零学会SQL-多表查询
之前学习的内容几乎针对单个表进行简单操作,实际工作中可没有这么简单,复杂的表结构和多表数据关联进行分析,这时候需要我们掌握多表查询方法,一如既往,我们先看一下这篇的主要内容: 表的加法 表的联结 联结 ...
最新文章
- 开篇有益-解析微软微服务架构eShopOnContainers(一)
- openFileDialog 打开TXT记事本文件写入数据库
- 13 种在 Linux 系统上检测 CPU 信息的工具
- C 语言编程 — 结构体的数据类型转换
- [BZOJ4448][SCOI2015]情报传递[dfs序+树状数组]
- 《微信小程序:开发入门及案例详解》—— 3.4 小结
- BigData之Hive:Hive数据管理的简介、下载、案例应用之详细攻略
- 两种语言的html文件,2. 第二章 HTML语言(一)(33页)-原创力文档
- android mysql sqlite_Android SQLite数据库基本操作方法
- 网络性能测试工具iperf详细使用图文教程【转载】
- U-Boot提供的命令【整理】
- 重金悬赏丨2019 华为 IoT 开发者大赛喊你加入“群聊”,倾听科技的“声音”!...
- 用vscode创建一个c项目_vscode怎么创建C语言项目
- 6.0系统机器Xposed框架安装经验
- ie主页被篡改(修改注册表)
- [java]左键画圆,右键画方
- 停车场停车怎么找车?怎样查车停车什么停车场?
- 视频教程-仿淘宝客户端电商平台android初级速成-Android
- python第六章答案_python第六章
- 游戏开发者放心!Cocos引擎未感染XcodeGhost
热门文章
- 【集合】统一身份认证(CAS)和OAuth2的工作流程
- 【板栗糖GIS】wps——如何将空格填充上一行的内容
- iex : 使用“3”个参数调用“SetEnvironmentVariable”时发生异常:“尝试执行未经授权的操作。”
- 高仿百科资料php,高仿喵喵折前端代码
- c# 调用mysql存储过程 返回值_C#调用MySQL存储过程,函数的最佳方法
- 查看电池系统信息,包括循环次数、电池状态等信息
- 读“袁峰的红包”有感
- 14. 使用MyBatis注解配置SQL
- 14、TensorFLow 变量命名空间
- CPU和GPU及CUDA入门基础概念