1.启动数据库

以管理员身份运行CMD

mysql数据库练习第一章_数据

输入  C:\WINDOWS\system32>net start mysql

启动mysql

mysql数据库练习第一章_mysql_02

2.输入用户名密码

C:\WINDOWS\system32>mysql -u root -p

mysql数据库练习第一章_数据_03

3.创建库,并创建学生详细信息表

需求:

创建库并创建学生详细信息表student:

student表

id

字符串

name

字符串,非空

age

数值型,非空

sex

约束:男 女

birth

出生日期:year型,非空

score

数值型,非空

 

3.1创建student库

mysql> create database student;

mysql数据库练习第一章_mysql_04

查看当前所有数据库

mysql> show databases;

mysql数据库练习第一章_数据_05

进入student库

mysql> use student;

mysql数据库练习第一章_mysql_06

3.2创建student表

可以这样创建:

mysql> create table student(id char,name char not null,age int not null,sex enum('男','女') ,birth year not null,score int not null) character set=utf8; 

mysql数据库练习第一章_mysql_07

 也可以这样创建:

create table student

(

id char,

name char not null,

age int not null,

sex enum('男','女') ,

birth year not null,

score int not null

) character set=utf8;

mysql数据库练习第一章_数据库_08

3.3修改表student名为teacher

 mysql> alter table student rename teacher;

mysql数据库练习第一章_mysql_09

3.4 修改列名id为sid

mysql> alter table teacher change id sid char;

mysql数据库练习第一章_数据库_10

3.5 查看当前表结构

mysql> desc teacher;

mysql数据库练习第一章_数据库_11

3.6 修改sid属性为数值型,唯一

mysql> alter table teacher modify sid int unique;

mysql数据库练习第一章_mysql_12

3.7 删除name列,再添加name列。修改name大小为20.

 

alter table teacher drop name;

alter table teacher add name char;

mysql> alter table teacher modify name char(20);

3.8插入20条数据。

 

插入20数据。其中含有张三3人,张三三2人,张三四4人。男女各10人。

先查看表的结构。

mysql数据库练习第一章_数据库_13

一次插入一条数据:

mysql> insert into teacher values(1,17,'1',1999,89,'张三');

一次插入多条数据:

insert into teacher values(1,17,'1',1991,89,'张三'),(2,14,'1',1996,59,'张三三'),(3,19,'1',1981,87,'张三四'),(4,21,'1',1989,85,'张三四'),(5,17,'1',2000,49,'张三'),(6,21,'1',1981,76,'张三四'),(7,17,'1',1991,69,'李四'),(8,12,'1',2003,74,'张三三'),(9,18,'1',1992,78,'张三四'),(10,19,'1',1994,80,'张三'),(11,19,'2',1987,29,'陈晓'),(12,31,'2',1976,59,'李晓红'),(13,34,'2',1971,87,'李萌'),(14,21,'2',1989,85,'孙悟空'),(15,25,'2',1990,49,'八戒'),(16,27,'2',1990,76,'小白马'),(17,26,'2',1992,69,'砂层'),(18,21,'2',1996,74,'蜘蛛精'),(19,20,'2',1995,78,'玉兔精'),(20,19,'2',1994,80,'李明');

mysql数据库练习第一章_数据_14

 

mysql数据库练习第一章_数据_15

3.9查询张三的全部信息

mysql> select * from teacher where name='张三';

 

8、查询姓张的sid,name。

 

select sid,name from teacher where name like '张%';

 

9、查询姓张的平均分

 

 select avg(score) from teacher where name like '张%';

 

10、统计性别男的人数。

 

select count(sex) from teacher where sex='男';

 

11、查询性别为男,年龄为24岁的人。

 

select * from teacher where sex='男' and age='24’;

 

12、统计共有有多少学生

 

select count(sid) from teacher;

 

13、获取当前日期。

 

select now();

 

14、查询分数最高的学生,姓名,id,分数。

 

select name,sid,score from teacher where score=(select max(score) from teacher);

 

15、计算所有学生的平均分数。

 

select avg(score) from teacher;

 

16、查询不及格的人的姓名,分数

 

select name,score from teacher where score<60;

 

17、按成绩从高到低排序

 

select * from teacher order by score desc;

 

18、查询除了张三其他所有人的名字,分数。

 

select name,score from teacher where name not like '张三';

 

19、查询不姓张的其他所有人的名字,分数,性别。

 

select name,score,sex from teacher where name not like '张%';

 

20、查询成绩前三名的学生,姓名,分数。

 

select name,score from teacher order by score desc limit 3;

 

21、查询,张三,张三三,张三四 分别有多少人。(一条语句)

 

select count(name) from teacher  where name='张三' or name='张三三' or name='张三四' group by name;

 

select count(name),name from teacher  where name='张三' or name='张三三' or name='张三四' group by name;

 

 

22、查询当前所在库

 

select  database ();

 

23、修改男性,birth=1991 人 的分数为101

 

 update teacher set  score=101,sex=‘1’ where birth=1991;

 

24、清空所有姓张,姓李的数据

 

delete from teacher where name like'张%'or name like'李%';

 

                                                                  in

 

25、查询分数最高的人全部信息。用两种方法

 

select * from teacher where score=(select max(score) from teacher);

select * from teacher order by score desc limit 1;