博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL 基础 (二)- 表操作
阅读量:5290 次
发布时间:2019-06-14

本文共 2148 字,大约阅读时间需要 7 分钟。

一天满课,晚上旷了院长的会来完成任务

项目三:超过5名学生的课(难度:简单) 创建如下所示的courses 表 ,有: student (学生) 和 class (课程)。

+---------+------------+| student | class      |+---------+------------+| A       | Math       || B       | English    || C       | Math       || D       | Biology    || E       | Math       || F       | Computer   || G       | Math       || H       | Math       || I       | Math       || A      | Math       |+---------+------------+

编写一个 SQL 查询,列出所有超过或等于5名学生的课。

应该输出:+---------+| class   |+---------+| Math    |+---------+Note:学生在每个课中不应被重复计算。

1.建表

CREATE TABLE courses (     STUDENT CHAR(2)  NOT NULL,     CLASS VARCHAR(255) NOT NULL        );

2.插入数据

INSERT INTO courses VALUES('A','Math');INSERT INTO courses VALUES('B','English');INSERT INTO courses VALUES('C','Math');INSERT INTO courses VALUES('D','Biology');INSERT INTO courses VALUES('E','Math');INSERT INTO courses VALUES('F','Computer');INSERT INTO courses VALUES('G','Math');INSERT INTO courses VALUES('H','Math');INSERT INTO courses VALUES('I','Math');INSERT INTO courses VALUES('A','Math');

3.实现查询

SELECT class FROM (    SELECT DISTINCT *    FROM courses ) as c    GROUP BY c.class HAVING COUNT(class)>=5     ;

 

 

项目四:交换工资(难度:简单) 创建一个 salary表,如下所示,有m=男性 和 f=女性的值 。

| id | name | sex | salary ||----|------|-----|--------|| 1  | A    | m   | 2500   || 2  | B    | f   | 1500   || 3  | C    | m   | 5500   || 4  | D    | f   | 500    |交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求使用一个更新查询,并且没有中间临时表。运行你所编写的查询语句之后,将会得到以下表:| id | name | sex | salary ||----|------|-----|--------|| 1  | A    | f   | 2500   || 2  | B    | m   | 1500   || 3  | C    | f   | 5500   || 4  | D    | m   | 500    |

建表:

CREATE TABLE Salary_TBL (     ID INT PRIMARY KEY NOT NULL,     NAME VARCHAR(255) NOT NULL,     SEX  VARCHAR(6) NOT NULL CHECK (SEX IN ('M', 'F')),     SALARY INT NOT NULL     );

插入数据

INSERT INTO Salary_TBL VALUES('1','A','M','2500');INSERT INTO Salary_TBL VALUES('2','B','F','1500');INSERT INTO Salary_TBL VALUES('3','C','M','5500');INSERT INTO Salary_TBL VALUES('4','D','F','500');

 

 

数据查询

UPDATE Salary_TBL SET sex=IF(sex='F','M','F');select * from Salary_TBL;

 

转载于:https://www.cnblogs.com/Thegonedays/p/10458378.html

你可能感兴趣的文章
内存地址对齐
查看>>
看门狗 (监控芯片)
查看>>
#ifndef #define #endif
查看>>
卷积神经网络知识链接
查看>>
java简介
查看>>
浮动、定位
查看>>
js细节
查看>>
SQL语句大全
查看>>
java中的变量
查看>>
css背景样式
查看>>
JavaScript介绍
查看>>
js中函数与对象的使用
查看>>
Date对象及toString方法
查看>>
正则表达式
查看>>
异常及throw、与throws的介绍
查看>>
js数组
查看>>
java运算符
查看>>
mysql简介
查看>>
java数组
查看>>
java二维数组
查看>>