一个笔试中数据库的题目,请高手解答
来源:百度知道 编辑:UC知道 时间:2024/06/27 23:33:38
表(PERSONNEL) 包含以下列:(选择1项)
ID NUMBER(9)
LAST-NAME VARCHAR2(25)
FIRST-NAME VARCHAR2(25)
MANAGER-ID NUMBER(9)
假设:部门经理是一名职员,判断下面两条语句执行结果有何不同:
SELECT p.last_name,p.first_name,m.last_name,m.first_name FROM personnel p,personnel m WHERE m.id=p.magager_id
SELECT p.last_name,p.first_name,m.last_name,m.first_name FROM personnel p,personnel m WHERE p.magager_id =m.id
A 其中一个语句不能执行
B 其中一个语句不是自连接
C 结果相同,显示顺序不同
D 结果不同,显示相同
请问选那一项,为什么?
ID NUMBER(9)
LAST-NAME VARCHAR2(25)
FIRST-NAME VARCHAR2(25)
MANAGER-ID NUMBER(9)
假设:部门经理是一名职员,判断下面两条语句执行结果有何不同:
SELECT p.last_name,p.first_name,m.last_name,m.first_name FROM personnel p,personnel m WHERE m.id=p.magager_id
SELECT p.last_name,p.first_name,m.last_name,m.first_name FROM personnel p,personnel m WHERE p.magager_id =m.id
A 其中一个语句不能执行
B 其中一个语句不是自连接
C 结果相同,显示顺序不同
D 结果不同,显示相同
请问选那一项,为什么?
呵呵,第一次看到这样滑稽的问题
我也搞不清楚了,只能够一个一个的判断
其中一个语句不能执行 ???不可能,两条语句都可以执行
其中一个语句不是自连接 ??两个语句一模一样,只不过条件的位置颠倒了,所以这个也不成立
C 结果相同,显示顺序不同
成立,结果肯定是相同的,你不信自己测试
然后我们分析第四个:结果不同,显示相同 ,条件一模一样,结果肯定是一样的拉!!!
所以这个不成立,
选择C
b
选:"结果相同,显示相同"
没有指定排序字段的时候默认按从左向右字段顺序排序,和查询出来的联结方式没关系
也许个别数据库排序规则特殊,纯属出题目的人无聊
经过测试,结果是“结果相同,显示相同”,但并不像yahahi说的“按从左向右字段顺序排序”,我的测试结果是,三个字段均是乱序,没有顺序,但是两个sql显示的完全一样。测试环境是sql server 2005
我觉得用排除法,是选C,A可以肯定的是两个语句都可以执行,B也都是自连接,D结果肯定是相同的,因为能够自己管的也就是管理员本身了,所以肯定是选择C。
跟上答c