一个数据库的的表的练习

一。 表的操作
创建student表,表中字段如下:

Sno:学号(主键)
sname :姓名
ssex : 性别
sdept : 所属系
sage :年龄
score: 成绩

CREATE TABLE student2(
Sno CHAR(10) NOT NULL PRIMARY KEY,
sname CHAR(10) NOT NULL,
ssex BOOLEAN,
sdept VARCHAR(20),
sage INT(10),
score FLOAT(10)
);

  1. 往表里添加10条记录记录:
    INSERT INTO student2
    VALUES ('1','第一个',1,'计算机系',22,98),
    ('2','第一个',1,'计算机系',22,98),
    ('3','第二个',1,'计算机系',22,98),
    ('4','第三个',1,'计算机系',22,98),
    ('5','第四个',0,'计算机系',22,98),
    ('6','第五个',0,'计算机系',22,98),
    ('7','第六个',1,'计算机系',23,98);

3.显示表的结构

DESC student2;
4.求表中记录数目
SELECT COUNT(sage) AS 记录数目 FROM student ;

举一个例子
查询"李"姓老师的数量
--方法
select count(Tname) ["李"姓老师的数量] from Teacher where Tname like N'李%'
--方法
select count(Tname) ["李"姓老师的数量] from Teacher where left(Tname,1) = N'李'

5.求年龄的平均值
SELECT AVG(sage) AS 平均年龄 FROM student ;
6.求最大年龄:
SELECT MAX(sage) AS 最大年龄 FROM student ;

  1. 查询全体学生的姓名、年龄,要求按照年龄降序排序。
    SELECT sname,sage FROM student ORDER BY sage DESC;
  2. 查询年龄最大的前3个学生的姓名和年龄,
    SELECT sname,sage FROM student ORDER BY sage DESC LIMIT 3;
    二。修改表结构

1.往表里添加字段: sadderss
ALTER TABLE student ADD t_date DATE;
2.为sage字段设置默认值: 100
ALTER TABLE student ALTER sage SET DEFAULT '100' ;
3.将字段ssex的数据类型改为 Boolean
ALTER TABLE course MODIFY ssex char(10) ;

  1. 删除字段 sadderss
    ALTER TABLE course DROP cname ;

三. 为student表创建一个附表 stu. 附表的数据是 student表中age小于60的数据。
CREATE TABLE stud33 SELECT sno, sname FROM stu WHERE sage<60 ;
四. 写出以下表达式

  1. 5不等于6 并且 4等于4
    SELECT 5!=6and4=4;

  2. 3在 5和 50之间
    SELECT 3 BETWEEN 5 AND 50;

  3. 6不在 1 和 4之间

  4. 字符 6 在 集合 (‘4’, ‘7’, ‘9’)之中
    SELECT '6'IN('4','7','9');

  5. 9 不在集合 (4,3,6,8)里
    SELECT 9 IN(4,3,6,8);

  6. 写出(4<3)同时 (3>2) 的逻辑与
    ` SELECT 4<3 AND3>2;

  7. 写出(4<3)同时 (3>2) 的逻辑或
    ` SELECT 4<3 OR 3>2;

8.写出(9=7)的逻辑非
SELECT 9!=7; 9.写出 (5!=9) 与(9>6)的异或表达式 SELECT 5!=9 OR 9>6;

  1. 写出 字符串asghj 与‘%hj‘匹配的表达式。
    ` SELECT 'asghj'LIKE '%hj';

你可能感兴趣的:(一个数据库的的表的练习)