问题 单项选择题

假设供应商S和供应情况SPJ的关系模式分别为:S(Sno,Sname,Status,City)和SPJ(Sno,Pno,Jno,Qty)。SQL语句 (22) 不能正确地查询出“零件号Pno等于‘P3’的供应商名Sname”,而 (23) 能正确查询的关系代数表达式。

A.пsname (S) D∞ σPno=’P3’(SPJ)

B.пsname (SD∞ σPno=’P3’(SPJ) )

C.пsname(S)-пsname (σPno≠’P3’ (S∞(SPJ)

D.пsname(S)-пsname ((S∞σPno≠’P3’,(SPJ)

答案

参考答案:B

解析:

[分析]: SQL语言是一种典型的关系型数据库语言,它包含数据描述语言DDL和数据操纵语言DML。其中,DDL包括数据定义和数据控制,DML 包括数据查询和数据修改。SQL的核心是数据库查询语句,语句的一般格式是:
SELECT 目标列
FROM 基本表(或视图)
[WHERE 条件表达式]
[GROUP BY 列名1 [HAVING 内部函数表达式]]
[ORDER BY 列名2 [ASC 或 DESC]]
整个语句的含义是:根据WHERE 子句中的条件表达式,从基本表(或视图)中找出满足条件的元组,按SELECT 子句的目标列,选出元组中的分量形成结果表。如果有ORDER子句,则结果表要根据指定的列名2升序(ASC)或降序(DESC)排序。GROUP 子句将结果按列名1分组,每个组产生结果表中的一个元组,通常在每组中作用库函数。分组的附加条件用HAVING 短语给出,只有满足内部函数表达式的组才子输出。COUNT 函数用来统计元组个数。DISTINCT 用来去掉查询结果中重复的行。

单项选择题
单项选择题