我需要使用视图从传输数据库中找到旅行腿详细信息。使用视图提取数据
我怎么都无法做到这一点。我需要查询所有行程不超过2个行程的行程,即带有1个或2个行程的行程,并显示行程编号(TripNo),行程原点(Start),第一个目的地(Stop1)和第二个行程目的地(Stop2)采用以下格式。
TripNo START STOP1 STOP2
- - - - - - - - - - - - - - - -
05 CatmanSt Chinatwon MayflowerSt
03 MayflowerSt Auckland
这是下表。
TRIP(TripNo,LicenseCardNo,CarReg,TRIP_DATE,)
PRIMARY KEY (TripNo),
FOREIGN KEY (LicenseCardNo) REFERENCES DRIVER(LicenseCardNo),
FOREIGN KEY (CarReg) REFERENCES TRUCK(CarReg)
(1, DR1, 'SJG123', ADD_MONTHS(TRUNC(SYSDATE),0)-135)
(2, DR2, 'GBC222', ADD_MONTHS(TRUNC(SYSDATE),0)-135)
(3, DR1, 'GBC270', ADD_MONTHS(TRUNC(SYSDATE),0)-133)
(4, DR3, 'SJG123', ADD_MONTHS(TRUNC(SYSDATE),0)-130)
(5, DR22, 'SJG123', ADD_MONTHS(TRUNC(SYSDATE),0)-130)
(6, DR22, 'GBC222', ADD_MONTHS(TRUNC(SYSDATE),0)-124)
TRIPLEG表
TRIPLEG( TripNo, LEGNo, DEPARTURE, DSTINATION)
CONSTRAINT TRIPLEG_PKEY PRIMARY KEY (TripNo, LEGNo),
CONSTRAINT TRIPLEG_UNIQUE UNIQUE(TripNo, DEPARTURE, DESTINATION),
CONSTRAINT TRIPLEG_FKEY1 FOREIGN KEY (TripNo) REFERENCES TRKTRIP(TripNo));
INSERT INTO TRIPLEG VALUES(1, 1, 'Armidale', 'Liverpool');
INSERT INTO TRIPLEG VALUES(1, 2, 'Liverpool', 'Adelaide');
INSERT INTO TRIPLEG VALUES(1, 3, 'Adelaide', 'Armidale');
INSERT INTO TRIPLEG VALUES(3, 1, 'MayflowerSt', 'Auckland');
....
INSERT INTO TRIPLEG VALUES(5, 1, 'CatmanSt', 'Chinatwon');
INSERT INTO TRIPLEG VALUES(5, 2, 'Chinatwon', 'MayflowerSt');
我需要使用视图来实现。怎么做 ?我无法检索它。我应该使用左连接或右连接
最后一个记录应该是INSERT INTO TRIPLEG VALUES(5,21,'Chinatwon','MayflowerSt');'? –
我正在使用orcale 11g –
@KiroConeski它应该是2.我编辑了它 –