MySQL数据库实验二:单表查询
实验二 单表查询
一、实验目的
理解SELECT语句的操作和基本使用方法。
二、实验环境
是MS SQL SERVER 2005的中文客户端。
三、实验示例
1、查询全体学生的姓名、学号、所在系。
SELECT Sname,S#,Sdept
FROM S;
2、查询全体学生的详细记录。
SELECT *
FROM S;
3、查全体学生的姓名及其出生年份。
SELECT Sname,2011-Sage /*假定当年的年份为2011年*/
FROM S;
4、查询选修了课程的学生学号。
SELECT S# FROM SC;
等价于:
SELECT ALL S# FROM SC;
指定DISTINCT关键词,去掉表中重复的行
SELECT DISTINCT S#
FROM SC;
5、 查询所有年龄在20岁以下的学生姓名及其年龄。
SELECT Sname,Sage
FROM S
WHERE Sage < 20;
6、 查询考试成绩有不及格的学生的学号。
SELECT DISTINCT S#
FROM SC
WHERE Grade<60;
7、 查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄
SELECT Sname,Sdept,Sage
FROM S
WHERE Sage BETWEEN 20 AND 23;
8、查询所有姓刘学生的姓名、学号和性别。
SELECT Sname,S#,Ssex
FROM S
WHERE Sname LIKE ‘刘%’;
9、查询姓"欧阳"且全名为三个汉字的学生的姓名。
SELECT Sname
FROM S
WHERE Sname LIKE '欧阳__';
10、 某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。查询缺少成绩的学生的学号和相应的课程号。
SELECT S#,C#
FROM SC
WHERE Grade IS NULL
11、查询计算机系年龄在20岁以下的学生姓名。
SELECT Sname
FROM S
WHERE Sdept= 'CS' AND Sage<20;
12、 查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。
SELECT S#,Grade
FROM SC
WHERE C#= ' 3 '
ORDER BY Grade DESC;
13、查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序排列。
SELECT *
FROM S
ORDER BY Sdept,Sage DESC;
14、 计算1号课程的学生平均成绩。
SELECT AVG(Grade)
FROM SC
WHERE C#= ' 1 ';
15、 求各个课程号及相应的选课人数。
SELECT C#,COUNT(S#)
FROM SC
GROUP BY C#;
16、 查询选修了3门以上课程的学生学号。
SELECT S#
FROM SC
GROUP BY S#
HAVING COUNT(*) >3;
四、实验内容与步骤
1、检索LIU老师所授课程的课程号和课程名。
2、检索年龄大于23岁的男学生的学号和姓名。
3、在表C中统计开设课程的教师人数。
4、 统计每个学生选修课程的门数(超过5门的学生才统计)。要求输出学生学号和选修门数,查询结果按门数降序排列,若门数相同,按学号升序排列。
5、 在表SC中检索成绩为空值的学生学号和课程号。
6、 检索姓名以L打头的所有学生的姓名和年龄。
7、查询年龄不在20~23岁之间的学生姓名、系别和年龄
8、查询既不是信息系、数学系,也不是计算机科学系的学生的姓名和性别。
9、查询所有不姓刘的学生姓名。
10、查所有有成绩的学生学号和课程号。
MySQL数据库实验二:单表查询的更多相关文章
- python实现简易数据库之二——单表查询和top N实现
上一篇中,介绍了我们的存储和索引建立过程,这篇将介绍SQL查询.单表查询和TOPN实现. 一.SQL解析 正规的sql解析是用语法分析器,但是我找了好久,只知道可以用YACC.BISON等,sqlit ...
- MySQL数据库篇之单表查询
主要内容: 一.单表查询的语法 二.关键字的执行优先级 三.简单查询 四.where约束 五.分组查询 group by 六.having过滤 七.查询排序 order by 八.限制查询的记录数 l ...
- MySql(六)单表查询
十.单表查询 一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制 ...
- 数据库——SQL数据单表查询
数据查询 语句格式 SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] … FROM <表或视图名>[,<表或视图名&g ...
- mysql四-1:单表查询
一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二.关键 ...
- (七)MySQL数据操作DQL:单表查询1
(1)单表查询 1)环境准备 mysql> CREATE TABLE company.employee5( id int primary key AUTO_INCREMENT not null, ...
- MySQL数据库实验四:嵌套查询
实验四 嵌套查询 一.实验目的 掌握SELECT语句的嵌套使用,实现表的复杂查询,进一步理解SELECT语句的高级使用方法. 二.实验环境 三.实验示例 1. 查询与“刘晨”在同一 ...
- MySQL数据库实验三:连接查询
实验三 连接查询 实验名称:连接查询(2课时) 一.实验目的 理解JOIN语句的操作和基本使用方法,掌握内连接.外连接.自身连接的概念和使用. 二.实验环境 是MS SQL SERVER 200 ...
- MYSQL数据库学习十 单表数据记录查询
10.1 简单数据记录查询 SELECT field1,field2,...fieldn FROM table_name; “*” ——查询所有记录 SELECT * FROM table_name; ...
随机推荐
- 修改阿里云ESC Centos 7.4 防火墙开放端口
例如系统:Centos 7.4操作如下 1,进入 cd /etc/firewalld/zones/ 目录 2,编辑 vim public.xml 3,按i或insert键进入编辑模式 4,在<z ...
- 在Oracle创建一个自己用的用户及角色
1.创建一个用户名为LIXIAOLONG,密码为123456的用户. CREATE USER LIXIAOLKONG IDENTIFIED BY 123456; 2.为用户授予连接,资源,管理员角色. ...
- MapReduce 详解
MapReduce的整个运行分为两个阶段: Map和Reduce Map阶段由一定数量的Map Task组成 输入格式的数据格式化:InputFormat 数日数据的处理:Mapper 数据分组:Pa ...
- vue-cli构建项目添加网站ico的logo
1.网上找一个把图片改成ico格式的网站,把logo改成ico格式,命名favicon.ico 2.将favicon.ico放入static目录 3.在index.html文件中引入 <link ...
- python17 多线程学习
多线程 多任务可以由多进程完成,也可以由一个进程内的多线程完成. 我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程. 由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的 ...
- Indexing the World Wide Web: the Journey So Far阅读笔记
文献文档用google搜索标题即可. term预处理:用空格切分,去除标点,去除撇号,归一化小写,去除变音符号,词干还原(?),去除停用词,挖掘词组. 索引选型工程最佳实践:term粒度.按doc分块 ...
- [转]LazyLoad.js及scrollLoading.js
本文转自:http://blog.csdn.net/ning109314/article/details/7042829 目前图片延迟加载主要分两大块,一是触发加载(根据滚动条位置加载图片):二是自动 ...
- QML 程序运行效率
同样的程序,在 Windows 下面启动时非常慢,而在 Linux 上启动时很快,一方面是因为 qml 界面的创建耗时不同,另一方面是因为读取文件的用时相差太大导致. On Linux 在 Linux ...
- asp.net webForm也可以这样用Ajax -- My Ajax Framework [全屏看文]
对于asp.net WebForm项目,进行Ajax操作大概有三种方式:web服务(.asmx文件) , 一般处理程序(.ashx)和 一些Ajax控件. 对于.net提供的ajax控件,暂且不 ...
- 轮播图jq版
轮播图的需求 1:图片自己轮播,并且下面的tabs小图标跟着显示 2.鼠标hover到tabs上面显示对应的图片 3.点击左右按钮,显示下一张图片. <div id="oLunbo&q ...