mysql 常用数据库语句 小练习

一个mysql小练习 建表 查询 修改表 增加字段 删除字段

闲来无事,上班时找了个练习来写,联系题目是针对sql server 2000的以下为mysql
一 单词解释(2分/个) 34分
  Data 数据 Database 数据库 RDBMS 关系数据库管理系统 GRANT 授权
  REVOKE 取消权限 DENY 拒绝权限 DECLARE 定义变量 PROCEDURE存储过程
  事务 Transaction 触发器 TRIGGER 继续 continue 唯

一 unqiue
  主键 primary key 标识列 identity 外键 foreign key 检查 check
  约束 constraint
--------------------------------------------------------------------
1) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话
create table student
(
学号 int,
姓名 varchar(10),
年龄 int,
性别 varchar(4),
家庭住址 varchar(50),
联系电话 varchar(11)
);
--------------------------------------------------------------------
2) 修改学生表的结构,添加一列信息,学历
alter table student add column 学历 varchar(6);
--------------------------------------------------------------------
3) 修改学生表的结构,删除一列信息,家庭住址
alter table student drop column 家庭住址;//注意此处用drop而非delete
--------------------------------------------------------------------
4) 向学生表添加如下信息:
  学号 姓名年龄性别联系电话学历
  1A22男123456小学
  2B21男119中学
  3C23男110高中
  4D18女114大学
insert into student (学号,姓名,年龄,性别,联系电话,学历) values(1,"A",22,"男","123456","小学");
insert into student (学号,姓名,年龄,性别,联系电话,学历) values(1,"B",21,"男","119","中学");
insert into student (学号,姓名,年龄,性别,联系电话,学历) values(1,"C",23,"男","123456","高中");
insert into student (学号,姓名,年龄,性别,联系电话,学历) values(1,"D",23,"女","114","大学");
--------------------------------------------------------------------
5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”
update student set 学历="大专" where 联系电话 like "11%";
--------------------------------------------------------------------
6) 删除学生表的数据,姓名以C开头,性别为‘男'的记录删除
delete from student where 姓名 like "C" and 性别="男";
--------------------------------------------------------------------
7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来
select 姓名,学号 from student where 年龄--------------------------------------------------------------------
8) 查询学生表的数据,查询所有信息,列出前25%的记录
select top 25 percent * from student ; ????
select * from student limit 25%;????
这条有问题,在sql 2000中应该是select top 25 percent * from student ;
--------------------------------------------------------------------
 9) 查询出所有学生的姓名,性别,年龄降序排列
select 姓名,性别,年龄 from student order by 年龄 desc;
--------------------------------------------------------------------
10) 按照性别分组查询所有的平均年龄
select avg(年龄) as 平均年龄 from student group by 性别;
select avg(年龄) from student group by 性别;
select avg(年龄) 平均年龄 from student group by 性别;
--------------------------------------------------------------------
  3) 说出以下聚合数的含义:avg ,sum ,max ,min , count ,count(*)
  AVG:求平均值
  SUM:求和
  MAX:求最大值
  MIN:求最小值
  COUNT(*):返回所有行数
  COUNT返回满足指定条件的记录值