mysql数据库实验2

3. 按120分制重新计算成绩,显示xs_kc表中学号为081101的学生的成绩信息。

select 学号,课程号,成绩*1.20 as 成绩120
             from xs_kc
             where 学号='081101';

4. 对xscj数据库的xs表只选择专业名和总学分,消除结果集中的重复行。

select distinct 专业名,总学分
             from xs;

5. 对xs表求学生总数。

select count(*) as'学生总数'
             from xs;

6. 对xs表统计备注不为空的学生数目。

select count(备注) as'备注不为空的学生数目'
             from xs;

7. 对xs表统计总学分50分以上的人数。

select count(总学分) as'总学分50分以上的人数'
             from xs
    where 总学分>50;

8. 对xs_kc表求选修101号课程的学生的成绩最高分和最低分。

select max(成绩),min(成绩)
             from xs_kc
             where 课程号='101';

9. 求学号为081101的学生所学课程的总成绩。

select sum(成绩)as'课程总成绩'
             from xs_kc
             where 学号='081101';

10. 求选修101号课程的学生的平均成绩。

select avg(成绩)as'课程101平均成绩'
             from xs_kc
             where 课程号='101';

11. 求选修101号课程的学生的成绩方差。

select variance(成绩)
          from xs_kc
          where 课程号='101';

12. 求选修101号课程的学生的成绩标准差。

select stddev(成绩)
          from xs_kc
          where 课程号='101';

13. 求选修了206号课程的学生的学号。

select group_concat(学号)
              from xs_kc
              where 课程号='101';

14. 对Employees表,查询employeeID为000001的员工地址和电话。

select address,phonenumber
              from employees
              where employees='000001';

15. 查询月收入高于2000元的员工号码。

select employeeid
          from salary
          where income>2000;

16. 查询Employees表中员工的姓名和性别,要求Sex为1时显示男,为0时显示女。

select name,
case
When  sex=1  then '男'
When  sex=0  then '女'
End as sex
from employees;

17. 查询Employees表获得员工总数。

select count(*) as'员工总数'
              from employees;

18. 计算Salary表中员工月收入的平均值。

select avg(income)as'月收入平均值'
             from salary;

19. 获得Employees表中最大的员工号码。

select max(employees)
             from employees;

20. 计算Salary表中所有员工的总支出。

select sum(outcome) as '员工总支出'
              from salary;

当前提供的引用内容并未直接涉及 CTGU 2025 春季学期的 MySQL 数据库实验 2_4 的具体资料或指导[^1]。然而,基于以往的经验以及类似的数据库课程设计模式,可以推测该实验可能围绕基础 SQL 查询语句展开。 以下是关于如何构建此类实验的一个假设性框架: ### 假设性的实验目标 #### ### 实验背景 通常情况下,MySQL 数据库实验会通过实际案例来帮助学生掌握 SQL 查询的基础语法及其应用。对于实验 2_4,其核心可能是让学生熟悉多联结查询、条件过滤以及聚合函数的应用。 #### ### 可能的任务描述 1. **创建数据结构** 学生需根据给定的需求定义多个关系型格并设置相应的约束。 ```sql CREATE TABLE Students ( studentID INT PRIMARY KEY, name VARCHAR(50), major VARCHAR(50) ); CREATE TABLE Courses ( courseID INT PRIMARY KEY, title VARCHAR(100), credits INT ); CREATE TABLE Enrollments ( enrollmentID INT PRIMARY KEY, studentID INT, courseID INT, grade DECIMAL(3, 2), FOREIGN KEY (studentID) REFERENCES Students(studentID), FOREIGN KEY (courseID) REFERENCES Courses(courseID) ); ``` 2. **插入测试数据** 需要向上述格中填充一些虚拟的数据以便后续验证查询逻辑是否正确。 ```sql INSERT INTO Students VALUES (1, 'Alice', 'Computer Science'); INSERT INTO Students VALUES (2, 'Bob', 'Mathematics'); INSERT INTO Courses VALUES (101, 'Database Systems', 3); INSERT INTO Courses VALUES (102, 'Calculus', 4); INSERT INTO Enrollments VALUES (1001, 1, 101, 85.5); INSERT INTO Enrollments VALUES (1002, 2, 102, 92.0); ``` 3. **执行复杂查询** - 使用 `JOIN` 来关联不同格中的记录。 ```sql SELECT s.name AS StudentName, c.title AS CourseTitle, e.grade FROM Students s JOIN Enrollments e ON s.studentID = e.studentID JOIN Courses c ON e.courseID = c.courseID; ``` - 应用聚合函数统计特定信息。 ```sql SELECT AVG(e.grade) AS AverageGrade FROM Enrollments e; ``` 以上仅为一种可能性展示,并不代真实存在的官方文档内容。如果需要确切版本,则建议联系授课教师获取最新讲义或者查阅学校内部资源平台上的正式发布材料。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值