学生信息数据库

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;