数据库原理与设计方法东南大学自动控制系邵家玉课件下载:内容摘要:
SC。 CREATE CLUSTER INDEX Stusname ON Student(Sname)。 例 6 为学生 —课程数据库中的 Student, Course,SC 3个表建立索引。 其中 Student表按学号升序建立唯一索引 , course表按课程号升序建立唯一索引 , SC表按学号升序和课程号降序建唯一索引。 CREATE UNIQUE INDEX Stusno ON Student(Sno)。 CREATE UNIQUE INDEX Couo ON Course(Cno)。 CREATE UNIQUE INDEX SCno ON SC(Sno ASC, Cno DESC)。 2. 删除索引 DROP INDEX<索引名>; 例 7 删除 Student表的 Stusname索引。 DROP INDEX Stusname。 查询 SELECT [ALL| DISTINCT] <目标列表达式> [,<目标列表达式> ]… FROM <表名或视图名> [, <表名或视图名> ]… [WHERE<条件表达式> ] [GROUP BY<列名 1> [HAVING<条件表达式> ]] [ORDER BY<列名 2> [ASC | DESC]]; 单表查询 1. 选择表中的若干列 1) 查询指定列 例 1 查询全体学生的学号与姓名。 SELECT Sno, Sname FROM Student。 例 2 查询全体学生的姓名 、 学号 、 所在系。 SELECT Sname, Sno, Sdept FROM Student; 2) 查询全部列 例 3 查询全体学生的详细记录 SELECT * FROM Student; 3) 查询经过计算的值 例 4 查询全体学生的姓名及其出生年份。 SELECT Sname, 2020Sage FROM Student; 例 5 查询全体学生的姓名 、 出生年份和所在系 ,要求用小写字母表示所在系名 SELECT Sname, ‘ Year of Birth: ’, 2020Sage, ISLOWER(Sdept) FROM Student。 SELECT Sname NAME, ‘ Year of Birth: ’ BIRTH , 2020Sagc BIRTHDAY , ISLOWER(Sdept) DEPARTMENT FROM Student; 结果为: NAME BIRTH BIRTHDAY DEPARTMENT 李勇 Year of Birth: 1976 cs 刘晨 Year of Birth: 1977 if 王名 Year of Birth: 1978 ma 张立 Year of Birth: 1978 if 2. 选择表中的若干元组 1) 消除取值重复的行 例 6 查询所有选修过课的学生的学号。 SELECT Sno FROM SC; 假设 SC表中有下列数据: Sno Cno Grade 95001 1 92 95001 2 85 95001 3 88 95002 2 90 95002 3 80 执行上面的 SELECT语句后 , 结果为: Sno 95001 95001 95001 95002 95002 SELECT DISTINCT Sno FROM SC; 执行结果为: Sno 95001 95002 SELECT Sno FROM SC; 与 SELECT ALL Sno FROM SC; 完全等价。 2) 查询满足条件的元组 表 35 常用的查询条件 ① 比较大小 = 等于 > 大于 < 小于 >= 大于等于 <= 小于等于。 =或<> 不等于 有些产品中还包括:。 > 不大于。 < 不小于 逻辑运算符 NOT可与比较运算符同用 , 对条件求非。 例 7 查计算机系全体学生的名单。 SELECT Sname FROM Student WHERE Sdept= ‘ CS‟; 例 8 查所有年龄在 20岁以下的学生姓名及其年龄。 SELECT Sname, Sage FROM student WHERE Sage< 20; 或 SELECT Sname, Sage FROM student WHERE NOT Sage=20; 例 9 查考试成绩有不及格的学生的学号。 SELECT DISTINCT Sno FROM SC WHERE Grade< 60; ② 确定范围 谓词 BETWEEN ... AND . . . 和 NOT BETWEEN... AND... 可以用来查找属性值在 (或不在 )指定范围内的元组 , 其中 BETWEEN后是范围的下限 (即低值 ), AND后是范围的上限(即高值 )。 例 10 查询年龄在 20至 23岁之间的学生的姓名 、 系别和年龄。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage BETWEEN 20 AND 23; 与 BETWEEN... AND... 相对的谓词是NOT BETWEEN... AND...。 例 11 查询年龄不在 20至 23岁之间的学生姓名 、 系别和年龄。 SELECT Sname, Sdept, Sage FROM Student WHERE Sage NOT BETWEEN 20 AND 23; ③ 确定集合 谓词 IN可以用来查找属性值属于指定集合的元组。 例 12 查信息系 (IS)、 数学系 (MA)和计算机科学系(CS)的学生的姓名和性别。 SELECT Sname. Ssex FROM Student WHERE Sdept IN(„IS‟, ‘ MA‟, ‘ CS‟); 与 IN相对的谓词是 NOT IN, 用于查找属性值不属于指定集合的元组。 例 13 查既不是信息系 、 数学系 , 也不是计算机科学系的学生的姓名和性别。 SELECT Sname. Ssex FROM Student WHERE Sdept NOT IN(„IS‟, ‘ MA‟, ‘ CS‟); ④ 字符匹配 谓词 LIKE可以用来进行字符串的匹配。 其一般语法格式如下: [NOT] LIKE „<匹配串> ’ 其含义是查找指定的属性列值与<匹配串>相匹配的元组 , <匹配串>可以是一个完整的字符串 ,也可以含有通配符 % 和 _。 其中: % (百分号 ) 代表任意长度 (长度可以为 0)的字符串。 例如 a%b表示以 a开头 , 以 b结尾的任意长度的字符串 , acb,adefb,ab等都满足该匹配串。 _(下划线 ) 代表任意单个宁符。 例如 a_b表示以 a开头 ,以 b结尾 , 长度为 3的字符串 , acb,adb等都满足该匹配串。 例 14 查询学号为 95001的学生的详细情况 SELECT * FROM Student WHERE Sno LIKE „9500l‟。 该语句实际上与下面的语句完全等价: SELECT * FROM Student WHERE Sno=„9500l‟。 例 15 查所有姓刘的学生的姓名 、 学号和性别。 SELECT Sname,Sno,Ssex FROM Student WHERE Sname LIKE „刘 %‟; 例 16 查姓 “欧阳 ”且全名为 3个汉字的学生的姓名。 SELECT Sname FROM Student WHERE Sname LIKE „欧阳 __‟; 例 17 查名字中第二字为 “阳 ”字的学生的姓名和学号。 SELECT Sname, Sno FROM Student WHERE Sname LIKE ‟__阳 % ’; 例 18查所有不姓刘的学生姓名。 SELECT Snamc, Sno, Ssex FROM Student WHERE Sname NOT LIKE „刘 %‟; ⑤ 涉及空值的查询 谓词 IS NULL和 IS NOT NULL可用来查询空值和非空值。 例 19 某些学生选修某门课程后没有参加考试 , 所以有选课记录 , 但没有考试成绩 , 下面来查一下缺少成绩的学生的学号和相应的课程号。 SELECT Sno, Cno FROM SC WHERE Grade IS NULL; 例 20 查所有有成绩的记录的学生学号和课程号。 SELECT Sno, Cno FROM SC WHERE Grade IS NOT NULL; ⑥ 多重条件查询 例 21 查 CS系年龄在 20岁以下的学生姓名 SELECT Sname FROM Student WHERE Sdept=„CS‟AND Sage20。 例 12中的 IN谓词实际上是多个 OR运算符的缩写 ,因此 , 例 l2中的查询也可以用 OR运算符写成如下等价形式: SELECT Sname. Ssex FROM Student WHERE Sdept=„IS‟OR Sdept=„MA‟OR Sdept=„CS‟; 3. 对查询结果排序 例 22 查询选修了 3号课程的学生的学号及其成绩 ,查询结果按分数的降序排列。 SELECT Sno, Grade FROM SC WHERE Cno= ‘ 3‟ ORDER BY Grade DESC; 例 23 查询全体学生情况 , 查询结果按所在系升序排列 , 对同一系中的学生按年龄降序排列。 SELECT * FROM Student ORDER BY Sdept, Sage DESC。 4. 使用集函数 COUNT([DISTINCT | ALL ] *) 统计元组个数 COUNT([DISTINCT | ALL]<列名> ) 统计一列中值的个数 SUM([DISTINCT | ALL] <列名> ) 计算一列值的总和 (此列必须是数值型 ) AVG([DISTINCT | ALL] <列名> ) 计算一列值的平均值 (此列必须是数值型 ) MAX([DISTINCT | ALL] <列名> ) 求一列值中的最大值 MIN([DISTINCT | ALL] <列名> ) 求一列值中的最小值 例 24 查询学生总人数。 SELECT COUNT( *) FROM Student。 例 25 查询选修了课程的学生人数。 SELECT COUNT(DISTINCT Sno) FROM SC。 例 26 计算 1号课程的学生平均成绩。 SELECT AVG(Grade) FROM SC WHERE Cno= ‘l‟; 例 27 查询学习 l号课程的学生最高分数。 SELECT MAX( Grade) FROM SC WHERE Cno= ‘ 1‟; 5. 对查询结果分组 例 28 查询各个课程号与相应的选课人数。 SELECT Cno, COUNT(Sno) FROM SC GROUP BY Cno; 例 29 查询信息系选修了 3门以上课程的学生的学号 , 为简单起见 , 假设 SC表中有一列 Dept, 它记录了学生所在系。 SELECT Sno FROM SC WHERE Dept= ‘ IS‟ GROUP BY Sno HAVING COUNT(*)> 3; 连接查询 1. 等值与非等值连接查询 [<表名 1> . ]<列名 1><比较运算符> [<表名 2> . ]<列名 2> 其中比较运算符主要有:= 、 > 、 < 、 >= 、 <= 、。 =。 此外 , 连接谓词还可以使用下面形式: [<表名 1> . ]<列名 1> BETWEEN[<表名 2. ]列名 2> AND[<表名 2> . ]列名 3 当连接运算符为=时 , 称为等值连接。 使用其它运算符称为非等值连接。 例 30 查询每个学生及其选修课程的情况。 SELECT Student.*, SC.* FROM Student, SC WHERE =。 例 31 Student表和 SC表的笛卡尔积。 SELECT Student.*,。数据库原理与设计方法东南大学自动控制系邵家玉课件下载:
相关推荐
下方,说明图的内容,可包括时间、地点 标目:纵横轴应在标目注明单位,纵横轴之比以 5:7为宜 图例:在图内右上角或图下方标题之上 (二)统计图的种类 1.条图( Bar graph) 用于比较性质相似而相互独立的资料(间断性 资料),有单式及复式条图。 某年某地几种主要疾病死亡专率 死亡专率(1 \10 万) 050100150200250脑血管病 恶性肿瘤心脏病老年慢性支气管炎肺结核脑血 恶性
频率组成一套覆盖全国的节目网: 每地平均 4个频率,直辖市和省会城市 68个频率 已启用的电视频道总数超过 7000个 东、中部地区已基本启用,难以找出空余频率 2020/11/23 国家广播电影电视总局 15 需要调整现有地面覆盖网布局 必须保证现有中央广播电视模拟节目覆盖 需要满足标准清晰度电视、高清晰度电视、公交车载电视等多种业务需求 寻找一个数字电视频道需要协调周围
制它,那么就不能改进它 —— H. James Harrington • 定性到定量分析,数量界限的重要性:量变引起质变 OR:SM 12 • 听一场音乐会: 网络订票的票价 500元,不去可退票 情况 1:在你马上要出发的时候,发现你把最近的价值500元的电话卡弄丢了。 你是否还会去听这场音乐会。 情况 2:假设昨天花 500元钱买一张今晚的音乐会取票单。 在你出发时,发现把票单丢了。
25 25 系统的基本(原型)组成 硬件 +软件 软件 =系统软件 + 应用软件 (系统软件:控制接口/系统管理类) OS(DOS/WIN/WIN9X/NT/XPOS/2,UNIX,LINUX) +娱乐 /CAD/CAI/CAT/SCADA/管理 / 硬件 = 主机 + 外设( Peripherals) CPU+ MEMERY +I/O接口 运算器( ALU) +控制器 +寄存器 东南大学
式论文) ◆ 选题过程中应考虑的几个因素 • 教育教学过程中所感受到的有研究价值的问题; • 有研究的兴趣或具备一定的研究理论基础; • 研究过程有助于自身教育教学能力和水平的提升; • 问题的解决能有效的提高教育教学的质量; 关于教育科研项目申请书的填写 一、数据表 课题组主要成员:课题组负责人以外的课题组人员,一般不超过 10人。 专长:指能对本课题研究起支持作用的个人学识、能力方面的特长。