厦门大学《数据库系统原理》课程作业与SQL解答

0 下载量 9 浏览量 更新于2024-08-04 收藏 38KB DOCX 举报
"厦门大学计算机科学系本科生课程《数据库系统原理》作业及答案" 这篇文档是厦门大学计算机科学系本科生在学习《数据库系统原理》课程时的一份作业及答案,主要涉及第三章的内容——关系数据库标准语言SQL。作业包含了对SQL语言的实践应用,通过解决一系列查询和操作问题来加深对SQL的理解。 作业中提到了几个关键点: 1. SQL语言的查询操作:例如,查询供应工程JI零件的供应商号码(SNO),这涉及到SQL的SELECT语句和DISTINCT关键字,用于去除重复结果。第二个查询是找到供应工程JI零件Pl的供应商号码,这里依然使用了SELECT和DISTINCT,同时添加了WHERE子句进行条件筛选。 2. 复杂查询:例如,查询供应工程JI红色零件的供应商号码,这需要用到多个表的联接(JOIN),如SPJ和P表,并且使用WHERE子句匹配颜色。第四题则涉及到了NOT IN子句,用于找出没有使用特定供应商生产红色零件的工程号。第五题则需要使用子查询(嵌套查询)来找出至少使用了供应商SI所有零件的工程号。 3. 数据库操作:作业还包含了其他SQL操作,如找出所有供应商的姓名和所在城市,这是简单的SELECT语句。此外,还有查询所有零件的名称、颜色、重量,以及使用特定供应商零件的工程号码等,这些都需要对SELECT、FROM和WHERE子句有深入理解。 4. 子查询的使用:在解决第五题时,由于VFP(Visual FoxPro)的限制,需要将查询分为两步,首先找出供应商S1供应的零件号,然后查询使用这些零件的工程号,这展示了如何在SQL中使用子查询和IN操作符。 这份作业全面地涵盖了SQL的基础和进阶查询技巧,包括SELECT语句、JOIN操作、WHERE子句、DISTINCT关键字、NOT IN操作符、子查询以及嵌套查询的应用,对于学习和掌握SQL语言具有很好的实践指导价值。