简体   繁体   中英

How do I create a view with three tables in Oracle SQL?

I'm trying to create a simple view using three tables in Oracle Apex. My three tables include SHOES, RELEASES, and RETAILERS:

SHOES
-----
SHOE_ID
NAME
(etc)

RELEASES
--------
SHOE_ID
RETAILER_ID
RELEASE_DATE
(etc)

RETAILERS
---------
RETAILER_ID
NAME
(etc)

I want to return the release dates, shoe names and retailer names for shoes that have been released. I tried to use inner join, but it keeps returning an error -- not sure what I'm missing.

CREATE VIEW RELEASES_BY_RETAILERS [RELEASE_DATE, SHOE, RETAILER] AS
SELECT RELEASES.RELEASE_DATE, SHOES.NAME, RETAILERS.NAME
FROM RELEASES
INNER JOIN SHOES ON SHOES.SHOE_ID = RELEASES.SHOE_ID
INNER JOIN RETAILERS ON RETAILERS.RETAILER_ID = RELEASES.RETAILER_ID;

My desired result is:

RELEASE_DATE      SHOE       RETAILER
-------------------------------------
2020-MAR-19       SHOE1      RETAILER1
2020-MAR-18       SHOE2      RETAILER3
(etc)

You have used the wrong parenthesis. You need to use () parenthesis.

Code should be like the following:

CREATE VIEW RELEASES_BY_RETAILERS (RELEASE_DATE, SHOE, RETAILER)  -- code change here
AS
SELECT RELEASES.RELEASE_DATE, SHOES.NAME, RETAILERS.NAME
FROM RELEASES
INNER JOIN SHOES ON SHOES.SHOE_ID = RELEASES.SHOE_ID
INNER JOIN RETAILERS ON RETAILERS.RETAILER_ID = RELEASES.RETAILER_ID;

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM