user3003451
user3003451

Reputation: 429

select from one table, insert into another table oracle sql query

I am trying to select data from one table
and insert the data into another table

    SELECT ticker FROM tickerdb;

Using OracleSql I am trying to
get the ticker symbol "GOOG" from the tickerdb table,
and insert the t.ticker into the stockdb table.

select from tickerdb table --> insert into quotedb table

    INSERT INTO quotedb
    (t.ticker, q.prevclose, q.opn, q.rnge,
    q.volume, q.marketcap, q.dividend, q.scrapedate)
    VALUES (?,?,?,?,?,?,?,?,SYSDATE)
    tickerdb t inner JOIN quotedb q
    ON t.ticker = q.ticker

Upvotes: 33

Views: 325089

Answers (5)

Carla Johnson
Carla Johnson

Reputation: 1

I was getting this error and realized I had left out the Connection Open command. It worked perfectly after that.

Upvotes: 0

Rajasekahr
Rajasekahr

Reputation: 81

try this query below:

Insert into tab1 (tab1.column1,tab1.column2) 
select tab2.column1, 'hard coded  value' 
from tab2 
where tab2.column='value';

Upvotes: 8

Keerthivasan
Keerthivasan

Reputation: 12890

From the oracle documentation, the below query explains it better

INSERT INTO tbl_temp2 (fld_id)
SELECT tbl_temp1.fld_order_id
FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;

You can read this link

Your query would be as follows

//just the concept    
    INSERT INTO quotedb
    (COLUMN_NAMES) //seperated by comma
    SELECT COLUMN_NAMES FROM tickerdb,quotedb WHERE quotedb.ticker = tickerdb.ticker

Note: Make sure the columns in insert and select are in right position as per your requirement

Hope this helps!

Upvotes: 65

KethanKumar
KethanKumar

Reputation: 726

You will get useful information from here.

SELECT ticker
INTO quotedb
FROM tickerdb;

Upvotes: 4

vkamayiannis
vkamayiannis

Reputation: 735

You can use

insert into <table_name> select <fieldlist> from <tables>

Upvotes: 18

Related Questions