student数据库

student学生表,course课程表表,sc成绩表

-- 1.找出成绩为95分的学生的姓名

SELECT Sname
FROM student
WHERE Sno IN(
SELECT DISTINCT Sno
FROM sc
WHERE Grade=95)

-- 2.查询大数据专业不及格学生名单

SELECT *
FROM student
WHERE Sno IN(
SELECT DISTINCT Sno
FROM sc
WHERE Sdept='大数据' AND Grade<=60)

-- 3.查询全部学生的学生名和所学课程号及成绩

SELECT Sname,Cno,Grade
FROM student,sc
WHERE student.Sno=sc.Sno

-- 4.找出籍贯(bplace)为山西或河北,成绩为80分以上的学生的姓名、籍贯和成绩

SELECT Sname,bplace,Grade
FROM student
WHERE Sno IN(
SELECT DISTINCT Sno
FROM sc
WHERE Grade>80
)
AND bplace='山西'OR bplace='河北'

-- 5.查出课程成绩在85分以上的女学生的姓名、课程名和成绩

SELECT Sname,Cname,Grade
FROM student
WHERE Sno IN(
SELECT Sno
FROM sc
WHERE Grade>85 AND Cno IN(
SELECT Cno
FROM course)
AND Ssex='女'

-- 6.查询没有选任何课程的学生的学号和姓名

SELECT Sno,Sname
FROM student
WHERE NOT EXISTS
(
SELECT *
FROM sc
WHERE student.`Sno`=sc.`Sno`
)

-- 7.查询哪些课程只有男生选读

SELECT DISTINCT
FROM course
WHERE '男'=ALL(
SELECT Ssex
FROM student,sc
WHERE student.`Sno`=sc.`Sno` AND course.`Cno`=sc.`Cno`)

-- 8.将电子商务专业的学生成绩加3分

UPDATE sc SET Grade=Grade+3
WHERE Sno IN(
SELECT Sno
FROM student
WHERE Sdept='电子商务'
)

-- 9.找出选修了全部课程的学生的姓名

SELECT Sname
FROM student
WHERE NOT EXISTS(
SELECT*
FROM course
WHERE NOT EXISTS(
SELECT *
FROM sc
WHERE student.`Sno`=sc.`Sno` AND course.`Cno`=sc.`Cno`
))

-- 10.查询选修C语言课程学生的学号、姓名和所在系

SELECT student.Sno,Sname,Sdept
FROM student,sc,course
WHERE student.Sno=sc.Sno
AND course.Cno=sc.Cno
AND Cname='C语言'

-- 11.删除李丽学生的选课信息

DELETE FROM sc
WHERE Sname='李丽'

-- 12.统计有多少名20岁以下的男同学

SELECT COUNT(Sno)
FROM student
WHERE Ssex='男' AND Sage>20

-- 13.向course表中填加一门课程

INSERT INTO course
VALUES('A07','C语言','4','2')

-- 14.列出年龄最大的学生名单

SELECT *
FROM student
WHERE Sage=(SELECT MAX(Sage)FROM student)

-- 15.列出所有年龄超过平均值的学生名单,按年龄的降序显示

SELECT *
FROM student
WHERE Sage>(SELECT AVG(Sage)FROM student)
ORDER BY Sage DESC

-- 16.检索至少选修课程号为A01和A02的学生学号

SELECT student.Sno
FROM sc
INNER JOIN student -- 内连接
ON student.Sno=sc.Sno AND (Cno='A01' AND Cno='A02')

-- 17.找出每门课程的平均成绩,且只选择学生超过2人的课程的平均成绩

SELECT student.Sno,AVG(Grade)
FROM student,sc
WHERE student.`Sno`=sc.`Sno`
HAVING COUNT(*)>2

-- 18.列出其他专业中比网络技术某个学生年龄小的学生

SELECT *
FROM student
WHERE Sdept='网络技术'
AND Sage <(SELECT MAX(Sage)FROM student WHERE Sdept='网络技术')

-- 19.查询所有大于学号为‘200201002’的学生的成绩的学生学号、姓名、课程名和成绩

SELECT student.Sno,Sname,Cname,Grade
FROM student
WHERE Sno IN(
SELECT Sno
FROM sc
WHERE Cno IN(
SELECT Cno
FROM course)
AND Sno>'200201002'))

MySQL实战,SQL语句的更多相关文章

  1. Mysql常用sql语句(4)- distinct 去重数据

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 我们使用select进行数据查询时是会返回所有匹 ...

  2. MySQL 中 SQL语句大全(详细)

    sql语句总结 总结内容 1. 基本概念 2. SQL列的常用类型 3. DDL简单操作 3.1 数据库操作 3.2 表操作 4. DML操作 4.1 修改操作(UPDATE SET) 4.2 插入操 ...

  3. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  4. Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  5. MySQL数据库sql语句的一些简单优化

    1.查询条件的先后顺序 有多个查询条件时,要把效率高能更精确筛选记录的条件放在后边.因为MySQL解析sql语句是从后往前的(不知是否准确). 例: select a.*,b.* from UsrIn ...

  6. mysql下sql语句 update 字段=字段+字符串

    mysql下sql语句 update 字段=字段+字符串   mysql下sql语句令某字段值等于原值加上一个字符串 update 表明 SET 字段= 'feifei' || 字段; (postgr ...

  7. MySQL数据库SQL语句基本操作

    一.用户管理: 创建用户: create user '用户名'@'IP地址' identified by '密码'; 删除用户: drop user '用户名'@'IP地址'; 修改用户: renam ...

  8. mysql执行sql语句过程

    开发人员基本都知道,我们的数据存在数据库中(目前最多的是mysql和oracle,由于作者更擅长mysql,所以这里默认数据库为mysql),服务器通过sql语句将查询数据的请求传入到mysql数据库 ...

  9. MySQL与SQL语句的操作

    MySQL与SQL语句的操作 Mysql比较轻量化,企业用的是Oracle,基本的是熟悉对数据库,数据表,字段,记录的更新与修改 1. mysql基本信息 特殊数据库:information_sche ...

  10. mysql 操作sql语句 目录

    mysql 操作sql语句 操作数据库 mysql 操作sql语句 操作数据表 mysql 操作sql语句 操作数据表中的内容/记录

随机推荐

  1. 基于ABP实现DDD--实体创建和更新

      本文主要介绍了通过构造函数和领域服务创建实体2种方式,后者多用于在创建实体时需要其它业务规则检测的场景.最后介绍了在应用服务层中如何进行实体的更新操作. 一.通过构造函数创建实体 假如Issue的 ...

  2. 一步一步在angular11中添加多语言支持

    1.新建angular 2.添加@angular/localize ng add @angular/localize 3.设置默认locale_id,在app.module.ts中 import { ...

  3. 【HMS core】【FAQ】HMS Toolkit典型问题合集1

    ​  1.[开发工具][HMS Toolkit][问题描述] HMS Toolkit 插件导致Android Studio崩溃无法使用 [解决方案] 1)        检查Android Studi ...

  4. Odoo14 需要哪些技术

    1 PostgreSQL:数据库,存储数据. 2 Python :主要作用是控制数据库,如:建表.关联字段.批量数据-- 3 html.css.javascript:基础前端. 4 scss:前端样式 ...

  5. Nginx 集群部署(Keepalived)

    # Nginx集群部署 # 当我们的用户同时访问量达到一定量的时候,一台服务器是不够用的 # 这个时候我们需要解决这个问题肯定是要添加新的服务器去处理用户访问 # 多台服务器处理用户访问就需要我们集群 ...

  6. LyScript 实现对内存堆栈扫描

    LyScript插件中提供了三种基本的堆栈操作方法,其中push_stack用于入栈,pop_stack用于出栈,而最有用的是peek_stack函数,该函数可用于检查指定堆栈位置处的内存参数,利用这 ...

  7. 1. MGR简介 | 深入浅出MGR

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1. 为什么是MGR MGR是MySQL Group Replication的缩写,即MySQL组复制. 在以往,我们一般 ...

  8. Jenkins使用pipeline部署服务到远程服务器

    写这篇文章是对之前搭建Jenkins做的修改和完善,让jenkins更好的为我们服务 Docker搭建Jenkins服务 使用过程中遇到的问题: 为方便部署,打算将jenkins用到的jdk11.ma ...

  9. Luogu1064 金明的预算方案 (有依赖的背包)

    枚举多个状态 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...

  10. Mac设置外网访问本地项目

    > 官网地址:https://ngrok.com/download 步骤(官网基本已经说明了步骤,但还不完善,以下为亲测步骤): 下载并注册账号 打开终端,进入ngrok.zip所在文件夹(方法 ...