0

I have to update one table from another one: I can do the update with the MySQL sgbd:

update product pr ,  provider p 
set pr.provider_name = p.name 
where p.provider_id = pr.provider_id ;

but when I try to do it with oracle : I tried this query for oracle

UPDATE pr 
SET pr.provider_name = p.name 
FROM product pr 
INNER JOIN provider p ON p.provider_id = pr.provider_id  ;

I get this error:

Error Code: 933, SQL State: 42000]  ORA-00933: SQL command not properly ended

What's wrong with my query?

2 Answers 2

2

Try this instead:

UPDATE product
SET provider_name = (
    SELECT p.name 
    FROM provider p 
    WHERE p.provider_id = product.provider_id
);
Sign up to request clarification or add additional context in comments.

Comments

2
UPDATE product prod SET prod.provider_name = (SELECT prov.name
                                                FROM provider prov 
                                               WHERE prod.provider_id = prov.provider_id)

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.