zhang5476499
「已注销」
采纳率80%
2016-03-21 14:02

SQL语句:等值链接,外连接问题

2
已采纳

编程:按要求写出SQL语句
TableX有三个字段Code,Name,Age,其中Code为主键;
TableY有三个字段Code,Class,Score,其中Code+Class为主键;
两表记录如下:

Code    Name    Age
97001     张三       22 
97002     赵四       21
97003     张飞       20 
97004     李五       22
Code   Class    Score 
97001    数学       80 
97002    计算机   59 
97003    计算机   60 
97004    数学      55
1.通过等值联接,取出Name,Class,Score,请写出SQL即输出结果 

2.通过外联接,取出每个学生的Name,Class,Score,请写SQL输出结果

楼主目前用的数据库是oracle 11g,尽量用Oracle的sql语句吧,如果用其他数据库的也
不介意的,不过回答的朋友请提示一下用的是什么数据库!

为了方便一些朋友调试,下面给出创建数据库和添加记录的sql语句吧.

 create table TABLEX
(
CODE VARCHAR2(10) not null,
NAME VARCHAR2(20),
AGE NUMBER
);
alter table TABLEX
add constraint P_TABLEX primary key (CODE);
create table TABLEY
(
CODE VARCHAR2(10) not null,
CLASS VARCHAR2(20) not null,
SCORE NUMBER
);
alter table TABLEY
add constraint P_TABLEY primary key (CODE, CLASS);
insert into TABLEX (CODE, NAME, AGE)
values ('97001', '张三', 22);
insert into TABLEX (CODE, NAME, AGE)
values ('97002', '赵四', 21);
insert into TABLEX (CODE, NAME, AGE)
values ('97003', '张飞', 20);
insert into TABLEX (CODE, NAME, AGE)
values ('97004', '李五', 22);
commit;
insert into TABLEY (CODE, CLASS, SCORE)
values ('97001', '数学', 80);
insert into TABLEY (CODE, CLASS, SCORE)
values ('97002', '计算机', 59);
insert into TABLEY (CODE, CLASS, SCORE)
values ('97003', '计算机', 60);
insert into TABLEY (CODE, CLASS, SCORE)
values ('97004', '数学', 55);
commit;

ps:由于没有多少分,之类只能给2分了,请见谅。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • danielinbiti danielinbiti 5年前
    1、 SELECT NAME,CLASS,SCORE FROM TABLEX,TABLEY WHERE TABLEX.CODE=TABLEY.CODE
    
    2、SELECT NAME,CLASS,SCORE FROM TABLEX LEFT JION TABLEY ON TABLEX.CODE=TABLEY.CODE
    
    点赞 1 评论 复制链接分享
  • qq_34377825 qq_34377825 5年前

    1、 SELECT NAME,CLASS,SCORE FROM TABLEX,TABLEY WHERE TABLEX.CODE=TABLEY.CODE

    2、SELECT NAME,CLASS,SCORE FROM TABLEX LEFT JION TABLEY ON TABLEX.CODE=TABLEY.CODE

    点赞 评论 复制链接分享

相关推荐