user5732936
user5732936

Reputation:

ABOUT JOIN IN ORACLE

FIRST TABLE

CREATE TABLE Persons (
    PersonID int PRIMARY KEY,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
); 

SECOND TABLE

CREATE TABLE Orders (
    OrderID int NOT NULL,
    OrderNumber int NOT NULL,
    PersonID int,
    PRIMARY KEY (OrderID),
    CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)
    REFERENCES Persons(PersonID)
);

I FIRE THAT QUERY

SELECT PERSONID ,ORDERNUMBER, LASTNAME  FROM PERSONS P, ORDERS 0  
   WHERE P.PERSONID =O.PERSONID;

IT SHOW ERROR

ORA-00933: SQL command not properly ended

Upvotes: 0

Views: 32

Answers (2)

Jacob
Jacob

Reputation: 14731

You defined the number zero as an alias, but then used capital O. In the query below, I have resolved the alias problem, and I also replaced your implicit join with an explicit one using an ON clause.

SELECT
    pr.personid,
    od.ordernumber,
    pr.lastname
FROM persons pr
JOIN orders od
    ON (pr.personid = od.personid);

Upvotes: 1

Zunair Fatimi
Zunair Fatimi

Reputation: 116

SELECT PERSONID ,ORDERNUMBER, LASTNAME  FROM PERSONS P inner join ORDERS O  
  on P.PERSONID =O.PERSONID

Try this, Make sure you do not use statement terminator at the end as oracle does not use terminator.

Upvotes: 0

Related Questions