1.
#作业#
创建如下所示的 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 |
+---------+------------+
create table courses(
student VARCHAR(5) NOT NULL PRIMARY KEY,
class VARCHAR(20) NOT NULL
);
INSERT INTO courses VALUES('A','Math')
INSERT INTO courses VALUES('A','Math')
INSERT INTO courses VALUES('A','Math')
INSERT INTO courses VALUES('B','Math')
INSERT INTO courses VALUES('C','English')
INSERT INTO courses VALUES('D','Math')
INSERT INTO courses VALUES('E','Biology')
INSERT INTO courses VALUES('F','Computer')
INSERT INTO courses VALUES('G','Math')
INSERT INTO courses VALUES('H','Math')
INSERT INTO courses VALUES('I','Math')
SELECT DISTINCT class FROM courses
GROUP BY class
having COUNT(*)>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(
ID INT NOT NULL PRIMARY KEY,
NAME VARCHAR(50) NOT NULL,
SEX CHAR(10) NOT NULL,
SALARY INT NOT NULL
);
INSERT INTO salary VALUES('1','A','m','2500')
INSERT INTO salary VALUES('2','B','f','1500')
INSERT INTO salary VALUES('3','C','m','5500')
INSERT INTO salary VALUES('4','D','f','500')
UPDATA salary SET sex=
CASE sex WHEN 'm'
THEN 'f'
ELSE 'm'
END;