首页 > 其他分享 >5.25

5.25

时间:2024-06-19 18:46:44浏览次数:22  
标签:检索 C# 5.25 课程 SC WHERE SELECT

今日学习内容:

假设教学管理系统数据库有3个基本表:

S( S# ,SNAME,AGE,SEX)

SC( S#,C#, CNAME)

C( C# ,CNAME,TEACHER)

(说明:SC 基本表中的 S# 是外码,引用了 S 基本表的 S# ;SC 基本表中的 C# 是外码,引用了 C 基本表的 C# )

完成如下题目(每个题目限用一个SQL语句实现):

1) 写出SC表的建表语句(数据类型自己定义)。(3分)

复制代码
1 CREATE TABLE SC (
2 S# CHAR(10),
3 C# CHAR(10),
4 PRIMARY KEY (S#, C#),
5 FOREIGN KEY (S#) REFERENCES S(S#),
6 FOREIGN KEY (C#) REFERENCES C(C#)
7 );
复制代码
2) 检索‘LIU’老师所授课程的课程号和课程名。(3分)

1 SELECT C.C#, C.CNAME
2 FROM C
3 WHERE C.TEACHER = 'LIU';
3) 检索年龄大于23岁的男学生的学号和姓名。(3分)

1 SELECT S.S#, S.SNAME
2 FROM S
3 WHERE S.AGE > 23 AND S.SEX = '男';
4) 检索学号为‘S3’的学生所学课程的课程名与任课教师名。(3分)

1 SELECT C.CNAME, C.TEACHER
2 FROM SC
3 JOIN C ON SC.C# = C.C#
4 WHERE SC.S# = 'S3';
5) 检索至少选修‘LIU’老师所授课程中一门课的女学生姓名。(3分)

1 SELECT DISTINCT S.SNAME
2 FROM S
3 JOIN SC ON S.S# = SC.S#
4 JOIN C ON SC.C# = C.C#
5 WHERE S.SEX = '女' AND C.TEACHER = 'LIU';
6) 检索‘WANG’同学不学的课程的课程名。(3分)

1 SELECT C.CNAME
2 FROM C
3 LEFT JOIN SC ON C.C# = SC.C#
4 WHERE SC.S# IS NULL AND SC.S# != 'WANG';
7) 检索至少选修两门课的学生学号。(3分)

1 SELECT SC.S#
2 FROM SC
3 GROUP BY SC.S#
4 HAVING COUNT(SC.C#) >= 2;
8) 检索全部学生都选修的课程的课程号与课程名。(3分)

复制代码
1 SELECT C.C#, C.CNAME
2 FROM C
3 WHERE NOT EXISTS (
4 SELECT S.S#
5 FROM S
6 WHERE NOT EXISTS (
7 SELECT SC.S#
8 FROM SC
9 WHERE SC.C# = C.C# AND SC.S# = S.S#
10 )
11 );
复制代码
9) 检索选修课程包含‘LIU’老师所授课程的学生学号。(3分)

1 SELECT SC.S#
2 FROM SC
3 JOIN C ON SC.C# = C.C#
4 WHERE C.TEACHER = 'LIU';
10) 用触发器实现删除学生,则删除该学生所选修的课程。(3分)

3 CREATE TRIGGER DeleteStudent
4 BEFORE DELETE ON S
5 FOR EACH ROW
6 BEGIN
7 DELETE FROM SC WHERE SC.S# = OLD.S#;
8 END

标签:检索,C#,5.25,课程,SC,WHERE,SELECT
From: https://www.cnblogs.com/szm123/p/18257042

相关文章

  • 5.25博客
    满满一周的课终于结束,奖励自己一杯奶茶吧学习内容:安卓packagecom.example.app_02.utils;importcom.example.app_02.R;importcom.example.app_02.database.MySQLConnection;importcom.example.app_02.entity.Record;importcom.example.app_02.entity.User;importja......
  • 5.25
    今日总结学习时间1hpackagecom.app.chapter03;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.TextView;importandroidx.activity.EdgeToEdge;importandroidx.appcompat......
  • 2024.05.25
    今天改一下主聊天界面的格式,使它成为按条列分布的格式packagecom.example.helppeople.adapter;importandroid.content.Context;importandroid.view.LayoutInflater;importandroid.view.View;importandroid.view.ViewGroup;importandroid.widget.BaseAdapter;impor......
  • AI推介-多模态视觉语言模型VLMs论文速览(arXiv方向):2024.05.25-2024.05.31
    文章目录~1.EmpoweringVisualCreativity:AVision-LanguageAssistanttoImageEditingRecommendations2.Bootstrap3D:Improving3DContentCreationwithSyntheticData3.Video-MME:TheFirst-EverComprehensiveEvaluationBenchmarkofMulti-modalLLMsin......
  • 5.9~5.25 测试总结
    5.25Codeforces1863(PinelyRound2(Div1+2)VP)result:只过了前四道,E死也没调出来。明显是急了啊。今天晚上还要打一场,注意:别急,越急越调不出来,注意多测的清空,注意部分小细节的写法。1863E前面先DP最早的完成时间(看到DAG上这种问题大概应该直接想到DP吧)(本题中......
  • 算法学习笔记——深度优先搜索DFS 2024.5.25
    LanqiaoOJ141此题是一道比较经典的搜索题目,这里采用深度优先搜索的方法题目描述X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废。某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征),怎样走才能路径最短?......
  • *2024.5.25 闲话
    今早一看这篇博客,我便昏死了过去,现在才刚刚缓过来。在昏死过去的短短数小时内,我的大脑仿佛被龙卷风无数次摧毁。在这篇博客这一神作的面前,我就像一个一丝不挂的原始人突然来到了现代都市,平衡树已如高楼大厦将我牢牢地吸引,开放世界就突然变成那喇叭轰鸣的汽车,不仅把我吓个措手不及......
  • 已知IP地址是192.168.5.121,子网掩码是255.255.255.248,求网络地址和主机地址
    方法1首先,将Ip地址转换为二进制:192.168.5.121转换为二进制:11000000.10101000.00000101.01111001然后将子网掩码转换成二进制:255.255.255.248转换为二进制:11111111.11111111.11111111.11111000网络地址=IP地址&子网掩码192.168.5.121&255.255.255.248=192.168.5.12......
  • boost asio在linux接收不到255.255.255.255的应答
    echo0>/proc/sys/net/ipv4/conf/all/rp_filterecho0>/proc/sys/net/ipv4/conf/eth0/rp_filterhttps://stackoverflow.com/questions/47829979/how-to-receive-a-udp-broadcast-sent-to-255-255-255-255-using-boost-asio......
  • 5.25每日总结
    今天还是学习python,今天是XML部分的内容。PythonXML解析什么是XML?XML指可扩展标记语言(eXtensible Markup Language)。XML被设计用来传输和存储数据。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义......