删除所有学生记录mysql_【MySQL】MySQL基础操作语句

mysql基础操作语句,包括数据库的增、删、切换,以及表的增、删、改、查、复制。

创建数据库

mysql> create database tem;

20190221155357978078.png

使用数据库

mysql> use tem;

20190221155358163625.png

删除数据库

mysql> drop database drop_test;

20190221155358304250.png

创建数据表

student表

mysql> CREATE TABLE student (

-> id INT(10) NOT NULL UNIQUE PRIMARY KEY ,

-> name VARCHAR(20) NOT NULL ,

-> sex VARCHAR(4) ,

-> birth YEAR,

-> department VARCHAR(20) ,

-> address VARCHAR(50)

-> );

20190221155358419484.png

创建score表

mysql> CREATE TABLE score (

-> id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT ,

-> stu_id INT(10) NOT NULL ,

-> c_name VARCHAR(20) ,

-> grade INT(10)

-> );

20190221155358526906.png

插入表数据

student表

mysql> INSERT INTO student VALUES( 001,‘RooneyMara‘, ‘F‘,1985,‘Psychology‘, ‘American‘);

mysql> INSERT INTO student VALUES( 002,‘ChrisHemsworth‘, ‘M‘,1983,‘CS‘, ‘Australia‘);

mysql> INSERT INTO student VALUES( 003,‘EllenPage‘, ‘F‘,1987,‘Music‘, ‘Canada‘);

mysql> INSERT INTO student VALUES( 004,‘TomHolland‘, ‘M‘,1996,‘CS‘, ‘England‘);

mysql> INSERT INTO student VALUES( 005,‘ScarlettJohansson‘, ‘F‘,1984,‘Music‘, ‘American‘);

mysql> INSERT INTO student VALUES( 006,‘BenedictCumberbatch‘,‘M‘,1976,‘Psychology‘, ‘England‘);

20190221155358611867.png

score表

mysql> INSERT INTO score VALUES(NULL,001, ‘Psychology‘,98);

mysql> INSERT INTO score VALUES(NULL,001, ‘Music‘, 80);

mysql> INSERT INTO score VALUES(NULL,002, ‘Psychology‘,65);

mysql> INSERT INTO score VALUES(NULL,002, ‘CS‘,88);

mysql> INSERT INTO score VALUES(NULL,003, ‘CS‘,95);

mysql> INSERT INTO score VALUES(NULL,004, ‘Psychology‘,70);

mysql> INSERT INTO score VALUES(NULL,004, ‘Music‘,92);

mysql> INSERT INTO score VALUES(NULL,005, ‘Music‘,94);

mysql> INSERT INTO score VALUES(NULL,006, ‘Psychology‘,90);

mysql> INSERT INTO score VALUES(NULL,006, ‘Music‘,85);

20190221155358785695.png

查询表数据

查询student表中的全部数据

mysql> select * from student;

20190221155358914601.png

查询student表的第3条到5条记录

mysql> select * from student limit 2,3;

20190221155359043507.png

查询student表的所有学生的id、name和department信息

mysql> select id,name,department from student;

20190221155359167531.png

查询student表中department为CS和Music的学生信息

mysql> select * from student where department in (‘CS‘,‘Music‘);

20190221155359263234.png

查询student表中年龄为23~32岁的学生信息

mysql> select id,name,sex,2019-birth as age,department,address

-> from student

-> where 2019-birth between 23 and 32;

20190221155359358937.png

查询student表中每个department有多少人

mysql> select department,count(id) from student group by department;

20190221155359495656.png

查询score表中每个科目(c_name)的最高分(grade)

mysql> select c_name,max(grade) from score group by c_name;

20190221155359632375.png

查询‘RooneyMara’的科目(c_name)和成绩(grade)

mysql> select c_name,grade from score

-> where stu_id=(select id from student where name=‘RooneyMara‘);

20190221155359730031.png

查询所有学生的信息和考试信息(用连接的方式)

mysql> select student.id,name,sex,birth,department,address,c_name,grade

-> from student,score

-> where student.id=score.stu_id;

20190221155359838429.png

计算每个学生的总成绩

mysql> select student.id,name,sum(grade) from student,score

-> where student.id=score.stu_id

-> group by id;

20190221155359930226.png

计算每个考试科目的平均成绩

mysql> select c_name,avg(grade) from score group by c_name;

20190221155400045460.png

查询Psychology成绩低于95的学生信息

mysql> select * from student

-> where id in (

-> select stu_id from score

-> where c_name=‘Psychology‘ and grade<95);

20190221155400173390.png

查询同时参加Psychology和CS考试的学生的信息

方法1:

mysql> select * from student

-> where id =any

-> (select stu_id from score where stu_id in

-> (select stu_id from score where c_name=‘Psychology‘)

-> and c_name=‘CS‘);

20190221155400291554.png

方法2:

mysql> select a.* from student a,score b,score c

-> where a.id=b.stu_id

-> and b.c_name=‘Psychology‘

-> and a.id=c.stu_id

-> and c.c_name=‘CS‘;

20190221155400428273.png

将Psychology考试成绩按从高到低进行排序

mysql> select stu_id ,grade from score where c_name=‘Psychology‘

-> order by grade desc;

20190221155400544484.png

查询student表和score表中学生的学号(id),然后合并查询结果

mysql> select id from student union select stu_id from score;

20190221155400666554.png

查询name中开头字母是“R”或者“E”的同学的姓名(name)、院系(department)和考试科目(c_name)及成绩(grade)

mysql> select student.id,name,sex,birth,department,address,c_name,grade

-> from student,score

-> where (name like ‘R%‘ or name like ‘E%‘)

-> and student.id=score.stu_id;

20190221155400803273.png

查询address都是England的学生的姓名(name)、年龄、院系(department)和考试科目(c_name)及成绩(grade)

mysql> select student.id,name,sex,2019-birth as age,department,address,c_name,grade

-> from student,score

-> where address=‘England‘

-> and student.id=score.stu_id;

20190221155400923390.png

删除表数据

mysql> delete from score where id=10;

20190221155401067921.png

更新表数据

mysql> update score set c_name=‘CS‘ where id=11;

20190221155401165578.png

复制表格式

1.查看数据表的完整结构

mysql> show create table student;

20190221155401256398.png

2. 修改数据表名,并执行SQL语句

mysql> CREATE TABLE `clone_student` (

-> `id` int(10) NOT NULL,

-> `name` varchar(20) NOT NULL,

-> `sex` varchar(4) DEFAULT NULL,

-> `birth` year(4) DEFAULT NULL,

-> `department` varchar(20) DEFAULT NULL,

-> `address` varchar(50) DEFAULT NULL,

-> PRIMARY KEY (`id`),

-> UNIQUE KEY `id` (`id`)

-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

20190221155401358937.png

复制表数据

mysql> insert into clone_student(id,name,sex,birth,department,address)

-> select id,name,sex,birth,department,address from student;

20190221155401512257.png

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值