• 基本SQL操作(一)


    为管理岗位业务培训信息,建立3个表:

    S (SID,SN,SD,SA) SID,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄

    C (CID,CN ) CID,CN 分别代表课程编号、课程名称

    SC ( SID,CID,G ) SID,CID,G 分别代表学号、所选修的课程编号、学习成绩

    1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名

    -----选修课程名为‘税收基础’的学员学号和姓名
    select sid,sn from s where sid in(select sid from c,sc where c.cid=sc.cid and cn='税收基础')

    2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

    ---选修课程编号为‘c2’的姓名和单位
    select sn,sd from s,sc where s.sid=sc.sid and cid='c2'

    4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

    -----选修全部课程的姓名和部门
    select sn,sd from (select A.sid from ((select sid,count(sid) as cc from sc group by sid) as A inner join (select count(*) as cc from c) as B on A.cc=B.cc)) as C left join s on s.sid=C.sid

    3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

    ---不选修课程编号为‘c5’的学员姓名和单位
    select sn,sd from s where sid not in (select sid from sc where cid='c5')

    5. 查询选修了课程的学员人数

    ----选修课程的学员人数
    select count(distinct sid) from sc

    6. 查询选修课程超过5门的学员学号和所属单位

    ---选修课程超过5门的学员姓名和单位
    select sn,sd from s
    where sid in (select sid from sc group by sid having count(distinct cid)>5)

  • 相关阅读:
    1009 说反话 (20)
    1008 数组元素循环右移问题 (20)
    1007 素数对猜想(20 分)
    1006 换个格式输出整数 (15)
    PAT 1005 继续(3n+1)猜想 (25)
    PAT 1004 成绩排名 (20)
    PAT 1003 我要通过!(20)
    PAT 1002 写出这个数 (20)(20 分)
    PAT 1001 害死人不偿命的(3n+1)猜想 (15)
    人口普查(20) PAT
  • 原文地址:https://www.cnblogs.com/jinweida/p/1118797.html
Copyright © 2020-2023  润新知