栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

数据库练习题目

数据库练习题目

1,写出创建如下三张表的SQL语句。

“项目”表结构: 

                项目号:普通编码定长字符类型,长度为10,主键。

                项目名:统一编码可变长字符类型,长度为10,非空。

                费用:整型,默认值100.

///项目表建表语句
create table ProgramTable
(    
    pID char(10) primary key,
    pName nchar(10) not null,
    price int default 100
)

“会员”表结构:

                会员号:普通编码定长字符类型,长度为18,主键。

                会员号:统一编码可变长字符类型,长度为10,非空。

                性别:统一编码定长字符类型,长度为1,取值为“男”和“女”。

                联系电话:普通编码定长字符类型,长度为11.

///会员表建表语句
create table TableVIP
(    
    vipID char(18) primary key,
    vipName nvarchar(10) not null,
    vipSex nchar(1) check vipSex in('男','女'),
    vipTel char(11)
)

“健身”表结构:

                项目号:普通编码定长字符类型,长度为10,引用“项目”表的外键。

                会员号:普通编码定长字符类型,长度为18,引用“会员”表的外键。

                健身日期:日期型。

                健身时长:整型,取值大于等于1.(注:以小时为单位)

                主键:(项目号,会员号,健身日期)

///健身表建表语句
create table TableExercise
(    
    programID char(10) references TableProgram,
    vipID char(18) references TableVip,
    exerciseDate datetime,
    exerciseTime int ,
    check( exerciseTime >= 1)
    primary key(programID ,vipID ,exerciseDate)
)

2,根据建立的表,写出操作的SQL语句。

(1)统计每个会员的总健身时长

select vipID,
       vipName,
       
       (select SUM(exerciseTime) 
        from TableExcercise b 
        inner join ProgramTable c
                on b.programID = c.pID
        where a.vipID = b.vipID) '会员总时长'
from TableVIP a

(2)查询所有姓“张”的会员的健身情况,列出会员名,健身日期,和健身时长

select vipName,
        (select exerciseDate ,exerciseTime
         from TableExcercise as b
         where a.vipID = b.vipID
        )     
from TableVIP as a
where vipName in '张%'

(3)将价格超过500元的项目费用减低100

update programTable  set price = price-100 where price>500

(4)在项目表中插入一新项目,项目号:X100,项目名:跑步,费用:200

insert into programTable values ('X100','跑步','200')

3,根据创建的表,写出满足下面要求的视图的SQL语句:

查询2019年乒乓球项目的使用情况,列出会员名,健身日期,健身时长。

CREATE VIEW ViewTest
as
SELECT vipName,exerciseDate,exerciseTime FROM TableVIP a,TableExercise b ,ProgramTable c 
WHERe b.vipID=a.vipID AND b.pID = c.pID AND c.pName='乒乓球' AND year(b.exerciseTime)=2019

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329497.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号