【SQL Server数据库】关系模式与关系代数

目录

一、请用关系代数完成下列查询

[1. 求 供应工程J1 零件P1的供应商号码SNO;](#1. 求 供应工程J1 零件P1的供应商号码SNO;)

[2. 求 供应工程J1 零件(P)为红色 的供应商号码SNO;](#2. 求 供应工程J1 零件(P)为红色 的供应商号码SNO;)

[3. 求 没有使用 天津供应商(P)生产的红色零件(S) 的工程号JNO;](#3. 求 没有使用 天津供应商(P)生产的红色零件(S) 的工程号JNO;)

[4. 求 至少使用了 供应商S1 所供应的 全部零件(S) 的工程号JNO;](#4. 求 至少使用了 供应商S1 所供应的 全部零件(S) 的工程号JNO;)

[5. 求 使用了红色零件(P) 但没有使用蓝色零件(P) 的工程号(JNO);](#5. 求 使用了红色零件(P) 但没有使用蓝色零件(P) 的工程号(JNO);)

[6. 求供应了 蓝色零件(P)工程项目(J)在北京 的 供应商的姓名和所在城市。](#6. 求供应了 蓝色零件(P)工程项目(J)在北京 的 供应商的姓名和所在城市。)

[7. 检索 至少使用了两种零件 的工程号(JNO)。](#7. 检索 至少使用了两种零件 的工程号(JNO)。)

[8. 检索 J1号工程 不使用的零件号(PNO)。](#8. 检索 J1号工程 不使用的零件号(PNO)。)

二、试述等值连接与自然连接的区别和联系。

三、关系代数的基本运算有哪些?

四、为什关系代数么关系中的元组没有先后顺序?

五、为什么关系中不允许有重复元组?


设有一个SPJ数据库,包含S、P、J、SPJ 4个关系模式:

|--------------------------|---------------------------|
| S(SNO,SNAME,STATUS.CITY) | P(PNO,PNAME,COLOR,WEIGHT) |
| J(JNO,JNAME,CITY) | SPJ(SNO,PNO,JNO,QTY) |

供应商S由供应商代码SNO、供应商姓名SNAME、供应商状态STATUS、供应商所在城市CITY组成;

零件表P由零件代码PNO、零件名PNAME、零件颜色COLOR零件重量WEIGHT组成;

工程项目表J由工程项目代码JNO、工程项目名JNAME、工程项目坐在城市CITY组成;

SPJ表由供应商代码SNO、零件号代码PNO、工程号代码JNO、供应数量QTY组成,表示某供应商供应某种零件给某工程项目的数量为QTY。

一、请用关系代数完成下列查询

1. 求 供应工程J1 零件P1的供应商号码SNO;

2. 求 供应工程J1 零件(P)为红色 的供应商号码SNO;

3. 求 没有使用 天津供应商(P)生产的红色零件(S) 的工程号JNO;

相当于 求 所有JNO工程号 - (使用了 天津供应商生产的 红色零件 的工程号)

4. 求 至少使用了 供应商S1 所供应的 全部零件(S) 的工程号JNO;

5. 求 使用了红色零件(P) 但没有使用蓝色零件(P) 的工程号(JNO);

6. 求供应了 蓝色零件(P)工程项目(J)在北京 的 供应商的姓名和所在城市。

7. 检索 至少使用了两种零件 的工程号(JNO)。

8. 检索 J1号工程 不使用的零件号(PNO)。

二、试述等值连接与自然连接的区别和联系。

(1)等值连接:从关系R和S的笛卡尔积中选取A,B属性值相等的元组;

(2)自然连接:是特殊的等值连接,R和S具有相同的属性组B,在结果中去掉重复的属性列。

连接运算符是"="的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组。

自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。

三、关系代数的基本运算有哪些?

并、差、笛卡尔积、投影和选择5种运算为基本的运算。其他3种运算,即交、连接和除,均可以用这5种基本运算来表达。

四、为什关系代数么关系中的元组没有先后顺序?

关系是元组的集合,集合中的元素是没有顺序的,所以关系中元组的顺序无关紧要。

五、为什么关系中不允许有重复元组?

因为每个关系模式都有一个主键,在关系中主键是唯一存在的。假若有重复元组,则其主键相等,那么起不了唯一标识的作用。所以关系中不允许有重复元组。

相关推荐
盒马coding1 小时前
第19节-非规范化数据类型-Composite-types
数据库·postgresql
-雷阵雨-1 小时前
MySQL——桥梁JDBC
数据库·mysql·oracle
亿坊电商1 小时前
在PHP框架里如何进行数据库连接?
数据库·oracle·php
满昕欢喜1 小时前
SQL Server从入门到项目实践(超值版)读书笔记 28
数据库·sql·sqlserver
楚韵天工2 小时前
宠物服务平台(程序+文档)
java·网络·数据库·spring cloud·编辑器·intellij-idea·宠物
李白你好3 小时前
一款专业的多数据库安全评估工具,支持 **PostgreSQL、MySQL、Redis、MSSQL** 等多种数据库的后渗透操作
数据库·mysql·postgresql
恋红尘4 小时前
Mysql
数据库·mysql
paishishaba4 小时前
数据库设计原则
数据库
曹牧5 小时前
oracle:NOT IN
数据库·oracle
爬山算法5 小时前
Redis(66)Redis如何实现分布式锁?
数据库·redis·分布式