【SQL Server数据库】简单查询

目录

用SQL语句完成下列查询。使用数据库为SCHOOL数据库

[1. 查询学生的姓名、性别、班级名称,并把结果存储在一张新表中。](#1. 查询学生的姓名、性别、班级名称,并把结果存储在一张新表中。)

[2. 查询男生的资料。](#2. 查询男生的资料。)

[3. 查询所有计算机系的班级信息。](#3. 查询所有计算机系的班级信息。)

4.查询艾老师所教的课程号。

[5. 查询年龄小于30岁的女同学的学号和姓名。](#5. 查询年龄小于30岁的女同学的学号和姓名。)

[6. 查询所有被选修的课程号。](#6. 查询所有被选修的课程号。)

7.在学生基本信息表Student中检索学生的姓名和出生年份,输出的列名为STUDENT_NAME和BIRTH_YEAR。

8.在StudnetGrade中,求选修课程"0511"且分数排名为前10%学生的学号和得分。

9.查询选修课程号为"0109"或"0111"的学生学号。

10.查询课程"0101"的成绩在80与90之间的同学的学号。

11.查询平均成绩都在80分以上的学生学号及平均成绩。


用SQL语句完成下列查询。使用数据库为SCHOOL数据库

1. 查询学生的姓名、性别、班级名称,并把结果存储在一张新表中。

Sql语句:

sql 复制代码
select Stu_name,Stu_sex,Class_name
into Stu_Cla
from Student s left outer join Class c
on s.Class_id = c.Class_id;

运行结果:

2. 查询男生的资料。

Sql语句:

sql 复制代码
select * from Student where Stu_sex = '男';

运行结果:

3. 查询所有计算机系的班级信息。

Sql语句:

sql 复制代码
/*连接查询*/
select c.*
from Class c,
     Deparment d
where d.Depar_name = '计算机系'
  and d.Depar_id = c.Depar_id;

/*子查询*/
select *
from Class
where Depar_id = (select Depar_id from Deparment where Depar_name = '计算机系');

运行结果:

4.查询艾老师所教的课程号。

Sql语句:

sql 复制代码
/*可能有多位艾老师,模糊查询;也可能教多门课程,distinct去重*/
select distinct Course_id
from Teacher t,
     CourseTeacher ct
where t.Teac_name like '艾%'
  and t.Teac_id = ct.Teac_id;

运行结果:

5. 查询年龄小于30岁的女同学的学号和姓名。

(获取系统当前时间函数:getdate(),获取时间的年份函数:year,获取月份函数:month,获取"日"函数:day)

Sql语句:

sql 复制代码
select Stu_id, Stu_name
from Student
where year(getdate()) - year(Birthday) < 30
  and Stu_sex = '女';

运行结果:

6. 查询所有被选修的课程号。

Sql语句:

sql 复制代码
/*有学生成绩的就是被选修了的,注意去重*/
select distinct Course_id from StudentGrade;

运行结果:

7.在学生基本信息表Student中检索学生的姓名和出生年份,输出的列名为STUDENT_NAME和BIRTH_YEAR。

Sql语句:

sql 复制代码
select Stu_name STUDENT_NAME, year(Birthday) BIRTH_YEAR
from Student;

运行结果:

8.在StudnetGrade中,求选修课程"0511"且分数排名为前10%学生的学号和得分。

(Top 10 percent)

Sql语句:

sql 复制代码
select top 10 percent Stu_id, Grade
from StudentGrade
where Course_id = '0511'
order by Grade desc;

运行结果:

9.查询选修课程号为"0109"或"0111"的学生学号。

Sql语句:

sql 复制代码
select distinct Stu_id
from StudentGrade
where Course_id in ('0109', '0111');

运行结果:

10.查询课程"0101"的成绩在80与90之间的同学的学号。

Sql语句:

sql 复制代码
select Stu_id
from StudentGrade
where Course_id = '0101'
  and Grade between 80 and 90;

运行结果:

11.查询平均成绩都在80分以上的学生学号及平均成绩。

(group by)

Sql语句:

sql 复制代码
select Stu_id, avg(Grade) avgGrade
from StudentGrade
group by Stu_id
having avg(Grade) > 80;

运行结果:

相关推荐
小徐不徐说2 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
论文复现现场2 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
Decay__3 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
心梦缘-雪雁4 小时前
SQL Server 查询数据存在哪个表里
数据库
lusklusklusk5 小时前
Python 巡检脚本:进程运行状态、数据库写入时效检查及邮件通知与告警
数据库·python·oracle
GeW6 小时前
产业新优势基础软件的人才底盘,从Linux与数据库开始
linux·数据库
SelectDB6 小时前
Doris Arrow Flight SQL 高速读取协议实战:与 Snowflake 客户端取数链路对照
大数据·数据库·数据分析
曼岛_6 小时前
[图解密码学]第4章 古典密码
java·数据库·密码学
瀚高PG实验室7 小时前
HGDB V9.0.5 .pgpass 免密登录提示 IsEncryptNon-base64 encoding 警告处理
数据库·postgresql·瀚高数据库
龙腾AI白云7 小时前
大模型检索增强生成(RAG)的技术原理与架构设计
数据库·python·机器学习·知识图谱