数据库案例练习

 练习题一

  1. 创建test数据库
  2. 在test数据库中创建student表,表结构如下图所示(id设置为主键自增长)


使用sql语句查询出表中的所有内容
向student表中添加记录如下图所示(10分)

 

 

  1. 使用sql语句查询出表中所有score>70的同学的id,name,score
  2. 更改name字段的数据类型为varchar(50)
  3. 向表中添加一个字段,字段名称为“pingjia”,字段类型为varchar(20)
  4. 更改姓名是张三的同学的分数为88
  5. 如果80分为及格线,查询出所有及格的同学的详细信息
  6. 使用关键字in,查询id值是1或5或7的同学的基本信息
  7. 查询id值在5至8的所有同学的基本信息
  8. 查询姓名是小红并且分数大于60的同学的基本信息
  9. 查询姓名是小红或者分数大于90的同学的基本信息

1创建表

CREATE table student2(
id int,
name varchar(200),
score int(11),
address varchar(200),
useremail varchar(200)
)


 2,插入数据  

     insert into student2 values
     (1,'张三',98,'北京','111112@qq.com'),
     (2,'李四',88,'上海','111113@qq.com'),
     (3,'王五',78,'广州','111114@qq.com'),
     (4,'赵六',68,'深圳','111115@qq.com'),
     (5,'孙七',58,'杭州','111116@qq.com'),
     (6,'小红',48,'北京','111117@qq.com'),
     (7,'小黑',100,'上海','111118@qq.com'),
     (8,'小绿',80,'杭州','111119@qq.com'),
     (9,'小粉',70,'杭州','111110@qq.com'),
     (10,'小子',60,'黑龙江','111112@qq.com')

3,数据查询

select * from student2 
select id,name,score from student2 where score>80
update student2 set name 
alter table student2 modify column name varchar(50)
alter table student2 add pingjia varchar(20)
update student2 set score =88 where name='张三'
select * from student2 where score >60
select * from student2 where id in(1,5,7)
select *from student2 where id >=5 and id <=8
select * from student2 where name ='小红' or score>60
select  *from student2 where  name ='小红' or  score>90
 

  练习题二

  1. 创建test数据库(10分)
  2. 在test数据库中创建emp表,表结构如下图所示(id设置为主键自增长)(10分)

 

  1. 向emp表中添加记录如下图所示(10分)

 

使用sql语句完成以下功能:

        1. 查询表中所有内容(10分)
        2. 查询表中姓名是张三的所有消息记录(10分)
        3. 查询表中姓名是三个字组成的所有员工的ename,job,sal字段的对应信息(10分)
        4. 查询表中empno字段从1004至1008所有员工的记录(10分)
        5. 查询表中所有job字段是文员并且姓名是黄盖的员工的所有信息(10分)
        6. 查询表中在2001年以后入职的员工信息(10分)
        7. 查询表中奖金(COMM)是NULL的员工信息(10分)

1,创建表 

create table emp(
empno int(11),
ename varchar(50),
job varchar(50),
mgr int(11),
hiredate date,
sal decimal(7,2),
coom decimal(7,2),
deptno int(11)
)

2,插入数据
 insert into emp values
 (1001,'甘宇','文员',1013,"2000-12-17",8000.00,3000.00,80),
 (1002,'黛绮丝','销售员',1013,"2000-12-17",8000.00,3000.00,20),
 (1003,'英田正','销售员',1006,"2003-12-17",8000.00,null,80),
 (1004,'刘备','经理',10009,"2005-12-17",8000.00,3000.00,20),
 (1005,'谢逊','营销员',1006,"2012-12-17",8000.00,null,20),
 (1006,'关羽','经理',1009,"2000-12-17",8000.00,3000.00,20),
 (1007,'张飞','经理',1004,"2008-12-17",8000.00,null,20),
 (1008,'诸葛亮','分析师',1013,"2007-1-17",8000.00,null,50),
 (1009,'曾阿牛','董事长',1013,"205-12-17",8000.00,null,20),
 (10010,'韦一笑','文员',1013,"2006-2-17",8000.00,3000.00,60),
 (10011,'周泰','文员',1013,"2000-12-7",8000.00,3000.00,10),
 (10012,'程普','文员',1013,"2011-5-17",8000.00,null,50),
 (10013,'庞统','分析师',1013,"2010-12-8",8000.00,3000.00,70),
 (10014,'张三','文员',1013,"2008-3-17",8000.00,null,20)


,3,查询数据
 select *from emp
 select * from emp where ename = '张三'
 select ename,job,sal from emp where ename like '___'
 select *from emp where empno >=1004 and empno <=1008
 select *from emp where job= '文员' and ename='张三'
 select *from emp where hiredate>"2001-12-17"
 select *from emp where coom is NULL 0     
CREATE table student3(
id int,
name varchar(200),
score int(11),
address varchar(200),
useremail varchar(200)
)
 insert into student3 values
     (1,'张三',98,'北京','111112@qq.com'),
     (2,'李四',88,'上海','111113@qq.com'),
     (3,'王五',78,'广州','111114@qq.com'),
     (4,'赵六',68,'深圳','111115@qq.com'),
     (5,'孙七',58,'杭州','111116@qq.com'),
     (6,'小红',48,'北京','111117@qq.com'),
     (7,'小黑',100,'上海','111118@qq.com'),
     (8,'小绿',80,'杭州','111119@qq.com'),
     (9,'小粉',70,'杭州','111110@qq.com'),
     (10,'小子',60,'黑龙江','111112@qq.com')
     
     select *from student3
     select id,name, address from student3
     select id,name,score from student3
     alter table  student3 modify column useremail varchar(50)
     alter table student3 add pingjia varchar(20)
     update student3 set score=92 where name='张三'
     select *from student3  where score >80
   update  student3 set score =score+20 where name ='张三'
     select * from student3  order by address asc,score desc
     select distinct(address) from student3

 

  练习题三

  1. 创建test数据库


向student表中添加记录如下图所示
在test数据库中创建student表,表结构如下图所示(id设置为主键自增长)

 

 

  1. 使用sql语句查询出表中id,name,和address字段的所有内容
  2. 使用sql语句查询出表中所有同学的id,name,score
  3. 更改useremail字段的数据类型为varchar(50)
  4. 向表中添加一个字段,字段名称为“pingjia”,字段类型为varchar(20)
  5. 更改姓名是张三的同学的分数为92
  6. 如果80分为及格线,查询出所有不及格的同学的详细信息
  7. 把姓名是“小红”的同学的分数在原来的基础上+20
  8. 使用关键字in,查询id值是1或5或7的同学的基本信息
  9. 查询id值在4至9的所有同学的基本信息
  10. 查询姓名是小红并且分数大于60的同学的基本信息
  11. 查询姓名是小红或者分数大于90的同学的基本信息
  12. 查询score字段值是NULL的同学的基本信息
  13. 查询name不是张三的同学的id,name,和score
  14. 按地址升序,成绩降序
  15. 对城市进行去重显示

1,创建表 

CREATE table student3(
id int,
name varchar(200),
score int(11),
address varchar(200),
useremail varchar(200)
)

2,插入数据
 insert into student3 values
     (1,'张三',98,'北京','111112@qq.com'),
     (2,'李四',88,'上海','111113@qq.com'),
     (3,'王五',78,'广州','111114@qq.com'),
     (4,'赵六',68,'深圳','111115@qq.com'),
     (5,'孙七',58,'杭州','111116@qq.com'),
     (6,'小红',48,'北京','111117@qq.com'),
     (7,'小黑',100,'上海','111118@qq.com'),
     (8,'小绿',80,'杭州','111119@qq.com'),
     (9,'小粉',70,'杭州','111110@qq.com'),
     (10,'小子',60,'黑龙江','111112@qq.com')
     

3,查询数据
     select *from student3
     select id,name, address from student3
     select id,name,score from student3
     alter table  student3 modify column useremail varchar(50)
     alter table student3 add pingjia varchar(20)
     update student3 set score=92 where name='张三'
     select *from student3  where score >80
   update  student3 set score =score+20 where name ='张三'
     select * from student3  order by address asc,score desc
     select distinct(address) from student3 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值