加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
复习作业3.sql 1.41 KB
一键复制 编辑 原始数据 按行查看 历史
朱美林 提交于 2021-04-28 19:49 . 1
create database StarManagerDB
use StarManagerDB
create table StarType(
T_NO int not null primary key identity(1,1),--明星类型编号
T_NAME nvarchar(20) --明星类型
);
SELECT * FROM StarType
create table StarInfo(
S_NO int not null primary key identity(1,1),
S_NAME nvarchar(20) not null,
S_AGE int not null,
S_HOBBY nvarchar(20),
S_NATIVE nvarchar(20) default'中国大陆',
S_T_NO int foreign key(S_T_NO) references StarType(T_NO)
);
insert into StarType(T_NAME)
values('体育明星')
,('IT明星')
,('相声演员');
insert into StarInfo(S_NAME,S_AGE,S_HOBBY,S_NATIVE,S_T_NO)
values('梅西','30','射门','阿根廷','1')
,('科比','35','过人','美国','1')
,('蔡景现','40','敲代码','中国','2')
,('马斯克','36','造火箭','外星人','2')
,('郭德纲','50','相声','中国','3')
,('黄铮','41','拼多多','中国','2');
--查询年龄最大的3个明星的姓名,特技和籍贯信息,要求使用别名显示列名。
select top 3 S_NAME 姓名, S_HOBBY 特技,S_NATIVE 籍贯 from StarInfo order by S_AGE desc
--按明星类型编号分类查询明星人数,明星平均年龄,显示明星人数大于2的分组信息,要求使用别名显示列名。
select S_T_NO ,count(S_T_NO) 明星人数 ,avg(S_AGE)明星平均年龄 from StarInfo
group by S_T_NO
having count(S_T_NO)>2
--查询明星类型为“体育明星”中年龄最大的姓名、特技、籍贯信息,要求显示列别名。
select S_NAME 姓名, S_HOBBY 特技, S_NATIVE 籍贯 from StarInfo
where S_AGE in (select max(S_AGE) from StarInfo
inner join StarType on StarInfo.S_T_NO=StarType.T_NO
where T_NAME='体育明星')
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化