好的,所以我对ORACLE的新手是我的问题
显示学生信息(STUDENTID,LASTNAME,FIRSTNAME, 课程,课程和标记。
此查询的结果必须按照coursename排序。
表学生:
range
表格课程:
1111111111 Smith Carolyn 124 Rolling Hills St Fullerton
2222222222 Maradona Diego 100 Imperial St Brea
3333333333 Messi Lionel 225 Bristol St Irvine
4444444444 Crosby Sidney 869 Coriander St Brea
5555555555 Ali Mohammed 125 Third Street Fullerton
表结果:
J01 Java 4
B01 DataBase 4
这个问题真让我困扰,我无法弄清楚..... 如果有人可以帮助我,我会非常感激!
谢谢大家!
答案 0 :(得分:2)
您还没有给出任何架构描述,因此我根据您在输出中所期望的列来假设列名称。这应该做:
select
s.studentid,
s.lastname,
s.firstname,
c.courseid,
c.coursename,
r.marks
from students s
inner join results r
on s.studentid = r.studentid
inner join courses c
on r.courseid = c.courseid
order by c.coursename;
修改强>
基于给定的DDL:
CREATE TABLE SALESPERSON (ID NUMBER (5), NAME VARCHAR2(20), AGE VARCHAR2(20), SALARY NUMBER(8));
CREATE TABLE CUSTOMER (ID NUMBER(5), NAME VARCHAR2(20), CITY VARCHAR2(15), INDUSTRY_TYPE VARCHAR2(5));
CREATE TABLE ORDERS (NUM NUMBER(5), ORDER_DATE DATE, CUST_ID NUMBER(5), SALESPERSON_ID NUMBER(5), AMOUNT NUMBER(6));
您可以像这样加入表:
select * /* Select required columns */
from orders o
inner join customer c
on o.cust_id = c.id
inner join salesperson s
on o.salesperson_id = s.id;