经典SQL学习笔记 (十)-学生信息数据库练习

学生信息数据库

1)  创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话 ,其中id为主键,且设置自增长,姓名不能为空。
-------------------------------------------------------------------- 
2) 修改学生表的结构,添加一列信息,学历 
3) 修改学生表的结构,删除一列信息,家庭住址 
4) 向学生表添加如下信息: 
  学号 姓名 年龄 性别 联系电话  学历 
  1    A    22    男    122     小学 
  2    B    21    男    119     中学 
  3    C    23    男    110     高中 
  4    D    18    女    114     大学 
-------------------------------------------------------------------- 
5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专” 
6) 删除学生表的数据,姓名以C开头,性别为‘男'的记录删除 
7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号显示出来 
8) 查询学生表的数据,查询所有信息,列出前3条记录 
9) 查询出所有学生的姓名,性别,年龄降序排列 
10) 按照性别分组查询所有的平均年龄 

SQL实现

1) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话 ,其中id为主键,且设置自增长,姓名不能为空。

/*
sporter表
*/
DROP TABLE IF EXISTS student;
CREATE TABLE student(
stuID Integer(20) NOT NULL auto_increment,
name varchar(20)  NOT NULL,
age Integer(11),
sex char(4),
address varchar(30),
phoneNumber Integer(11),
PRIMARY KEY  (stuID )
)  ENGINE=InnoDB DEFAULT CHARSET=utf8;
-------------------------------------------------------------------- 
2) 修改学生表的结构,添加一列信息,学历 
ALTER TABLE student ADD eduBackground varchar(30);
3) 修改学生表的结构,删除一列信息,家庭住址 
ALTER TABLE student DROP address;
4) 向学生表添加如下信息: 
  学号 姓名 年龄 性别 联系电话  学历 
  1    A    22    男    122     小学 
  2    B    21    男    119     中学 
  3    C    23    男    110     高中 
  4    D    18    女    114     大学 

INSERT INTO student VALUES(1,'A',22,'男',122,'小学'),
(2,'B',21,'男',119,'中学'),(3,'C',23,'男',110,'高中'),
(4,'D',18,'女',114,'大学');


-------------------------------------------------------------------- 
5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专” 
UPDATE student SET eduBackground= '大专'WHERE phoneNumber LIKE '11%';
6) 删除学生表的数据,姓名以C开头,性别为'男'的记录删除 
DELETE FROM student WHERE name LIKE 'C%' AND sex ='男';
7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号显示出来 
SELECT name,stuID
FROM student
WHERE age<22 AND eduBackground='大专';
8) 查询学生表的数据,查询所有信息,列出前3条记录 
SELECT * 
FROM student
LIMIT 3;
9) 查询出所有学生的姓名,性别,年龄降序排列 
SELECT name,sex,age
FROM student
ORDER BY age desc;
10) 按照性别分组查询所有的平均年龄
SELECT sex, AVG(age)
FROM student
GROUP BY sex;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值