在数据库DBTeaSystem教师基本信息表(表名为TBTeacher)结构如下(使用T-SQL创建数据库,数据表):
列名 | 说明 | 数据类型 | 约束 |
Tno | 编号 | 字符串,长度为10 | 主码 |
Tname | 姓名 | 字符串,长度为16 | 非空 |
Tsex | 性别 | 字符串,长度为2 |
|
Tage | 年龄 | 整数 |
|
Tdept | 所在部门 | 字符串,长度为32 |
|
若TB_Teacher表中已存在以下数据(直接可视化方式添加数据):
Tno | Tname | Tsex | Tage | Tdept |
C9512101 | 李勇 | 男 | 38 | 计算机系 |
C7612102 | 刘晨 | 男 | 58 | 计算机系 |
C9712103 | 王敏 | 女 | 36 | 计算机系 |
I9221101 | 张立 | 男 | 42 | 信管系 |
I9821102 | 吴宾 | 女 | 29 | 信管系 |
I0021103 | 张海 | 男 | 27 | 信管系 |
E7831101 | 钱小平 | 女 | 60 | 外语系 |
E9531102 | 王大力 | 男 | 39 | 外语系 |
E0431103 | 张立 | 男 | 25 | 外语系 |
写出下列SQL语句并给出结果:
代码:
create database TBTeacher
Use TBTeacher
create table TBTeacher
(
Tno char(10),
Tname varchar(16) not null,
Tsex char(2),
Tage int,
Tdept char(32)
);
- 查询所有教师记录:
Use TBTeacher
select *
from TBTeacher
2、查询所有年龄小于30的记录:
SELECT *
FROM TBTeacher
where Tage<30;
3、查询所有年龄小于30的信管系教师记录:
SELECT *
FROM TBTeacher
where Tage<30 and Tdept='信管系';
4、查询所有外语系教师的编号与姓名:
SELECT Tname
FROM TBTeacher
where Tdept='外语系';
5、查询所有年龄在30-40之间的教师记录:
select *
from TBTeacher
where Tage>30 and Tage<40;
6、查询外语系的男教师记录:
SELECT Tname
FROM TBTeacher
where Tsex='男' and Tdept='外语系';
7、查询教师信息表中姓‘张’、姓‘李’和姓‘刘’的教师记录:select *
select *
from TBTeacher
where Tname like'张%' or Tname like'李%' or Tname like'刘%';
8、查询名字中第2个字为‘小’或‘大’字的教师的姓名和编号:
Use TBTeacher
select *
from TBTeacher
where Tname like'_大_' or Tname like '_小_';
9、查询信管系姓‘张’的教师记录:
select *
from TBTeacher
where Tname like'张%';
10、查询信管系姓‘李’且年龄不大于40岁的教师记录:
select *
from TBTeacher
where Tname like'李%' and Tage<40;
11、查询计算机系所有年龄在40-80之间的教师姓名:
select *
from TBTeacher
where Tdept='计算机系' and Tage<80 and Tage>40;
12、查询外语系教师名字中倒数第2个字为‘小’或‘大’字的记录:
select *
from TBTeacher
where Tdept='外语系' and Tname LIKE'_大%' or Tname LIKE'_小%' ;
- 查询所有的教师记录,系别升序排列,年龄降序排列:
系别升序:
select *
from TBTeacher
order by Tdept asc;
年龄降序:
select *
from TBTeacher
order by Tage desc ;
14、查询所有女教师,年龄从大到小排序:
Use TBTeacher
select *
from TbTeacher
where Tsex='女'
order by Tage desc;
15、统计教师个数:
SELECT count(*) as '教师人数'
FROM TbTeacher
16、求信管系教师的平均年龄:
SELECT AVG(Tage)as '平均年龄' FROM TbTeacher where Tdept='信管系';
17、求计算机系年龄最大的男教师:
select MAX(Tage)as '最大年龄'
FROM TBTeacher
where Tsex='男';