Join two tables into a new one

I have two tables that I would like to save as one. They are related by a key (id).
I've tried this:
- Created empty table_new with the same columns as table1 and table2.
- Then:
SELECT *
INTO table_new
FROM table1
LEFT OUTER JOIN table2
ON table1.id = table2.id;
I get the error "Missing keyword".
If I do just a SELECT with LEFT OUTER JOIN, the result shows exactely what I want to store in the table. But how can I store it?
Any other idea, how to solve the problem is welcome too. Attaching the columns of table2 to table1 would also be a solution.

Like this?
SQL> drop table t2;
Table dropped.
SQL> drop table t1;
Table dropped.
SQL> create table t1 (id number, text varchar2(100));
Table created.
SQL> create table t2 (id number, my_text varchar2(100));
Table created.
SQL> insert into t1 values(&id, '&text');
Enter value for id: 1
Enter value for text: aaa
1 row created.
SQL> /
Enter value for id: 2
Enter value for text: bbb
1 row created.
SQL> /
Enter value for id: 3
Enter value for text: ccc
1 row created.
SQL> insert into t2  values(&id, '&my_text');
Enter value for id: 1
Enter value for my_text: asdf
1 row created.
SQL> /
Enter value for id: 2
Enter value for my_text: ;lkj
1 row created.
SQL> commit;
Commit complete.
SQL> drop table t1t2;
Table dropped.
SQL>  create table t1t2 as select t1.id, t1.text, t2.my_text from t1, t2 where t1.id = t2.id (+);
Table created
SQL> select * from t1t2;
        ID TEXT                                                                                                 MY_TEXT
         1 aaa                                                                                                  asdf
         2 bbb                                                                                                  ;lkj
         3 ccc-Arun

Similar Messages

  • Merging (Joining) two tables into one

    Is it possible to merge two adjacent tables into one table in Pages? Also, how can you split one table into multiple tables?

    If we use the exact meaning of the words, the response is no and no.
    If we play a bit with the meanings we may do the trick.
    (1) I create a table with 6 columns and 5 rows.
    (2) select cells D1 …F5, copy, paste in the document but out of the table. We get the right half of the table.
    From the tool bar, reduce the number of columns of table 1 fom 6 to 3. Bingo we have the two halves of the original table.
    (3)Select the first half and increase the number of rows from 5 to 10
    (4) copy the entire second half, select cell D1 in the enlarged table, paste.
    Bingo, we have the merged table.
    For sure, a merge and a split tables features would be welcome but as the table tool is the one used in the spreadsheet, I would be surprised if these features where introduced one day.
    _Go to "Provide Pages Feedback" in the "Pages" menu_, describe what you wish.
    Then, cross your fingers, and wait _at least_ for iWork'11
    Yvan KOENIG (VALLAURIS, France) jeudi 22 avril 2010 17:28:48

  • How to map 2 tables together into a new one, like an Union?

    Hi.
    I am new in Oracle Data Warehouse Builder and what I'm wanting to do could be simple.
    My question is: How to map 2 tables into a new one? That is, what I need is to do a Union.
    See the following tables:
    What I have is:
    ---------------+ ---------------+
    | A | B | | A | B |
    |--------------- |---------------
    | 10 | 34 | | 13 | 39 |
    ---------------+ ---------------+
    Table 1 Table 2
    What I wish is:
    ---------------+ ----------------------+
    | A | B | Original table |
    |--------------- ----------------------+
    | 10 | 34 | 1 |
    |--------------- ----------------------+
    | 13 | 39 | 2 |
    |--------------- ----------------------+
    Then, I need put all data together into a new table and this new table should has a new column showing the original source of data to each record.
    Can I do such thing?
    I'm using the Oracle Warehouse Builder and trying to do a map in this way.
    Any hint will be very helpful. I also will appreciate an indication of some document which can show how to do it.
    Thanks .
    Rodrigo Pimenta.
    Brazil.

    Use the SET OPERATOR. That should help i guess.

  • Join two tables to one recordset with nested table?

    Hello all!
    I want to "de-normalize" two tables into one for presentation reasons. For example:
    CREATE TABLE foo(id number)
    CREATE TABLE bar(foo_id number, value varchar2(4))
    And with some data:
    FOO:
    1
    2
    BAR:
    1, 'gaz'
    1, 'boz'
    2, 'blah'
    Now I want to create a view that holds the value of the BAR table in a nested table, if possible and efficient enough..
    VIEW:
    1, nested_table('gaz,'boz')
    2, nested_table('blah')
    Any clue for creating such a view? I would prefer a view, because this view will be joined with other tables later.
    Thanks in advice!

    Or
    SQL> with foo as
      2  ( select 1 id from dual union all
      3    select 2 id from dual
      4  ),
      5  bar as
      6  (
      7    select 1 foo_id, 'gaz'  value from dual union all
      8    select 1 foo_id, 'boz'  value from dual union all
      9    select 2 foo_id, 'blah' value from dual
    10  )
    11  --
    12  --
    13  select id,
    14         cast(multiset((select value from bar where id=foo_id)) as sys.dbms_debug_vc2coll) value
    15    from foo
    16  /
            ID VALUE
             1 DBMS_DEBUG_VC2COLL('gaz', 'boz')
             2 DBMS_DEBUG_VC2COLL('blah')or from 10g on
    SQL> with foo as
      2  ( select 1 id from dual union all
      3    select 2 id from dual
      4  ),
      5  bar as
      6  (
      7    select 1 foo_id, 'gaz'  value from dual union all
      8    select 1 foo_id, 'boz'  value from dual union all
      9    select 2 foo_id, 'blah' value from dual
    10  )
    11  --
    12  --
    13  select id,
    14         cast(collect(value) as sys.dbms_debug_vc2coll) value
    15    from foo, bar
    16    where id=foo_id
    17    group by id
    18  /
            ID VALUE
             1 DBMS_DEBUG_VC2COLL('gaz', 'boz')
             2 DBMS_DEBUG_VC2COLL('blah')Edited by: michaels2 on Oct 8, 2008 2:27 PM

  • I have created two tables for my new  report under one transport request.

    Unwanted table transported
    I have created two tables for my new  report under one transport request.
    But I only need one table and the second table I was supposed to delete.
    However by mistake, with out deleting the second tableu2026 the transport request is released and moved to quality system.
    how to handle this issue. 
    I am not sure any additional changes for this program.
    Could you please suggest me an idea.
    Thanks in adv

    >
    sam kumar wrote:
    > Unwanted table transported
    > I have created two tables for my new  report under one transport request.
    > But I only need one table and the second table I was supposed to delete.
    > However by mistake, with out deleting the second tableu2026 the transport request is released and moved to quality system.
    >
    > how to handle this issue. 
    >
    > I am not sure any additional changes for this program.
    > Could you please suggest me an idea.
    >
    > Thanks in adv
    Does one custom table more or less really matter?  If you really want delete it, delete the table in DEV which will put it into a new transport and get that transport moved to TEST.

  • Combining two tables into one result

    Hi all, I am fairly inexperienced with Crystal but have gained good results from the reports I have created, I am fluent in SQL and Basic to an extent.  I am interigating a Pronto database and I want concatenate two tables into one report.
    Table One: Customer Orders
    Fields:  Customer No, Invoice Number, Invoice date, Invoice Amount, Cost Amount.
    Table Two: Archived Customer Orders
    Fields:  Customer No, Invoice Number, Invoice date, Invoice Amount, Cost Amount.
    I want to complete a report that will tell me the sales for a given period and the outstanding orders for each customer total for all fields in each table combined into one figure.
    Any help would be greatly appreciated.
    Thanks in advance

    Hi Grant,
    As you said you are goot at writing SQL, in Crystal write a SQL statement in Add Command to join both table using Union / Union all
    If you use Union then it will filter duplicate records and pull the data from database, If you use Union All then it will include all your duplicate records.  Please use Union / Union All as required.
    Once you get all data into the report create a parameter for date range and generate the summaries as required.
    Thanks,
    Sastry

  • Need help to join two tables using three joins, one of which is a (between) date range.

    I am trying to develop a query in MS Access 2010 to join two tables using three joins, one of which is a (between) date range. The tables are contained in Access. The reason
    the tables are contained in access because they are imported from different ODBC warehouses and the data is formatted for uniformity. I believe this cannot be developed using MS Visual Query Designer. I think writing a query in SQL would be suiting this project.
    ABCPART links to XYZPART. ABCSERIAL links to XYZSERIAL. ABCDATE links to (between) XYZDATE1 and ZYZDATE2.
    [ABCTABLE]
    ABCORDER
    ABCPART
    ABCSERIAL
    ABCDATE
    [ZYXTABLE]
    XYZORDER
    XYZPART
    XYZSERIAL
    XYZDATE1
    XYZDATE2

    Thank you for the looking at the post. The actual table names are rather ambiguous. I renamed them so it would make more sense. I will explain more and give the actual names. What I do not have is the actual data in the table. That is something I don't have
    on this computer. There are no "Null" fields in either of the tables. 
    This table has many orders (MSORDER) that need to match one order (GLORDER) in GLORDR. This is based on MSPART joined to GLPART, MSSERIAL joined to GLSERIAL, and MSOPNDATE joined if it falls between GLSTARTDATE and GLENDDATE.
    [MSORDR]
    MSORDER
    MSPART
    MSSERIAL
    MSOPNDATE
    11111111
    4444444
    55555
    2/4/2015
    22222222
    6666666
    11111
    1/6/2015
    33333333
    6666666
    11111
    3/5/2015
    This table has one order for every part number and every serial number.
    [GLORDR]
    GLORDER
    GLPART
    GLSERIAL
    GLSTARTDATE
    GLENDDATE
    ABC11111
    444444
    55555
    1/2/2015
    4/4/2015
    ABC22222
    666666
    11111
    1/5/2015
    4/10/2015
    AAA11111
    555555
    22222
    3/2/2015
    4/10/2015
    Post Query table
    GLORDER
    MSORDER
    GLSTARTDATE
    GLENDDATE
    MSOPNDATE
    ABC11111
    11111111
    1/2/2015
    4/4/2015
    2/4/2015
    ABC22222
    22222222
    1/5/2015
    4/10/2015
    1/6/2015
    ABC22222
    33333333
    1/5/2015
    4/10/2015
    3/5/2015
    This is the SQL minus the between date join.
    SELECT GLORDR.GLORDER, MSORDR.MSORDER, GLORDR.GLSTARTDATE, GLORDR.GLENDDATE, MSORDR.MSOPNDATE
    FROM GLORDR INNER JOIN MSORDR ON (GLORDR.GLSERIAL = MSORDR.MSSERIAL) AND (GLORDR.GLPART = MSORDR.MSPART);

  • How do I join two tables in the same database and load the result into a destination table in a SSIS package

    Hi,
    I have a query that joins two tables in the same database, the result needs to be loaded in a destination DB table.  How do I do this in SSIS package?
    thank you !
    Thank You Warmest Fanny Pied

    Please take a look at these links related to your query.
    http://stackoverflow.com/questions/5145637/querying-data-by-joining-two-tables-in-two-database-on-different-servers
    http://stackoverflow.com/questions/7037228/joining-two-tables-together-in-one-database

  • Collapsing two tables into one table or one queue

    When you have data that exists in 2 tables A and B and B is essentially a child of A if you want to process these records such that you see all A's before their assoociated B how can you use either Streams or AQ to collapse these two tables into one? The data exists at it's source in database tables it will be replicated to another location and at that location I want to keep the data as it exists at the source but also process it in the ordered fashion I described above. My thinking is to publish the data to one queue but the challenge is to ensure that all A's are put on the queue before their B is. I don't just want a priority queue whereby all A's are processed before B's because if that happens B's will never be processed. but I simply want to avoid reading a B off the queue before I've read it's A.

    No version number and no clarity of what you are trying to accomplish.
    Without knowing that the problem is a nail ... I'd hardly be recommending using a hammer.

  • Join Two tables in UI So that it look like one table.

    Can anyone provide me how to join table in viewing..
    Rite now i am reteiving fields in one table and other field in another table. But while viewing i want to join on UI.
    I am getting gap between these 2 tables.
    How to do that?
    Thanks

    Hi Nitin,
    why you want to join two tables.? if you want to display the data from more then one data source (Node ) then you can use table variant in that case. See the following Links for reference hope it will help.
    [Using Table Cell Variants in NW 2004s|http://wiki.sdn.sap.com/wiki/display/WDJava/UsingTableCellVariantsinNW2004s]
    [Play Sudoku: Using Table Cell Variants in Web Dynpro Java|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c0310fd2-f40d-2a10-b288-bcbe0810a961]
    Regards
    Jeetendra

  • Joining two tables having no common fields using one select query

    Hi Experts,
    How to join two tables which are NOT having any field in common using only one select query?
    Your help will be appreciated.
    Thank you.

    Identify a third table (or more tables) with common fields with your two tables, or change your question either removing JOIN or removing NO COMMON FIELDS, else you wont get many responses and will be left alone in outer space, as suggested by Thomas.
    If you acturally require what you written, better execute two select and merge the two internal tables merging every record from first table with every record of second table, til no more memory is available.
    Regards,
    Raymond

  • Join two tables with no matching records

    Hi All,
    I have two tables which have got data as below. Now I need to join those two tables but there are no matching rows or columns in those tables. I have used OUTER JOIN but query was taking more than 5 mnts to run. Whats the best way to join two tables where
    there are no matching records.
    Table : Sections &Table : orders 
    I am expecting the final output like I have mentioned below.
    How can i write a JOIN. Note there are no matching records from both the tables.
    Pls.This is a very urgent requirement.Regards
    -pep

    Thanks Elrand. I have one question. What if I want to add 10 more parameters in @Section table then
    the logic I have written below will not work. I will have to make it dynamic. Any suggestions.?
    declare @test table (RowNo INT,CokeType NVARCHAR(MAX),BeginUsage dateTIME)
    declare @Section table (SectionName NVARCHAR(100))
    insert into @Section values ('CokeType')
    insert into @Section values ('BeginUsage')
    insert into @test values (1,'OMV - 02E (04/2012)','01-02-2014')
    insert into @test values (2,'OMV - 02E (04/2012)','01-03-2014')
    insert into @test values (3,'PCIC - 01 (01E/2013)','01-04-2014')
    insert into @test values (4,'PCIC - 01 (01E/2013)','01-05-2014')
    insert into @test values (5,'PCIC - 01 (E) - 07/2011 & Alba /2010 (C/F) 05/2011','01-06-2014')
    select * from @Section
    select * from @test
    SELECT
    RowNo,SectionName,
    CASE
    WHEN(SectionName = 'CokeType') THEN CokeType
    ELSE
    CAST (BeginUsage AS VARCHAR(MAX))
    END
    AS DATA
    FROM @Section AS S
    CROSS APPLY
    (SELECT T.RowNo,T.CokeType,T.BeginUsage FROM @test T) P
    ORDER BY SectionName DESC

  • Joining two tables using PL/SQL

    here i am trying to join two tables can any one tell me what is wrong with this syntex
    CREATE OR REPLACE PROCEDURE test IS
    CURSOR c1 IS SELECT seq,fname,lname from t1;
    CURSOR c2 IS SELECT seq1,q,a from t2;
    userjob number;
    BEGIN
         OPEN c1;
    insert into t3 values(c1.seq,c1.fname,c1.lname);
         FETCH c1.seq INTO userjob;
    FOR c1rec IN c2 LOOP
    IF (c1rec.seq=c1.seq and c1rec.q1='why') THEN
    insert into t3 values(c1rec.q1,c1rec.a1);
    elsif (c1rec.seq=c1.seq and c1rec.q1='what') then
    insert into t3 values(c1rec.q2,c1rec.a2);
    elsif (c1rec.seq=c1.seq and c1rec.q1='when') then
    insert into t3 values(c1rec.q3,c1rec.a3);
    elsif (c1rec.seq=c1.seq and c1rec.q1='where') then
    insert into t3 values(c1rec.q4,c1rec.a4);
         END IF;
         END LOOP;
         END;
    /

    You should always fetch a cursor before using it's values. All columns in the select should be fetched into variables or a record-variable. You can't refer to the cursor-columns values with c1.seq etc.
    r1 c1%rowtype;
    l_found boolean;
    BEGIN
    OPEN c1;
    FETCH c1 INTO r1;
    insert into t3 values(r1.seq,r1.fname,r1.lname);
    l_found := c1%found;
    close c1;
    if l_found
    then
    It is also better to close the cursor and check if the select resulted in a row. With this code you will only retrieve one row even if the select will result in multiple rows.
    But I agree with all the others that this can probably be done more efficiently with one SQL statement.

  • How to join two tables

    hi
    how to join two tables using inner join  if the first table has two primary keys and second table has 3 primary keys

    Would describe type of joins in ABAP, which might differ with other joins.
    The join syntax represents a recursively nestable join expression. A join expression consists of a left-hand and a right- hand side, which are joined either by means of INNER JOIN or LEFT OUTER JOIN. Depending on the type of join, a join expression can be either an inner (INNER) or an outer (LEFT OUTER) join. Every join expression can be enclosed in round brackets. If a join expression is used, the SELECT command circumvents SAP buffering.
    On the left-hand side, either a single database table, a view dbtab_left, or a join expression join can be specified. On the right-hand side, a single database table or a view dbtab_right as well as join conditions join_cond can be specified after ON. In this way, a maximum of 24 join expressions that join 25 database tables or views with each other can be specified after FROM.
    AS can be used to specify an alternative table name tabalias for each of the specified database table names or for every view. A database table or a view can occur multiple times within a join expression and, in this case, have various alternative names.
    The syntax of the join conditions join_cond is the same as that of the sql_cond conditions after the addition WHERE, with the following differences:
    At least one comparison must be specified after ON.
    Individual comparisons may be joined using AND only.
    All comparisons must contain a column in the database table or the view dbtab_right on the right-hand side as an operand.
    The following additions not be used: NOT, LIKE, IN.
    No sub-queries may be used.
    For outer joins, only equality comparisons (=, EQ) are possible.
    If an outer join occurs after FROM, the join condition of every join expression must contain at least one comparison between columns on the left-hand and the right-hand side.
    In outer joins, all comparisons that contain columns as operands in the database table or the view dbtab_right on the right-hand side must be specified in the corresponding join condition. In the WHERE condition of the same SELECT command, these columns are not allowed as operands.
    Resulting set for inner join
    The inner join joins the columns of every selected line on the left- hand side with the columns of all lines on the right-hand side that jointly fulfil the join_cond condition. A line in the resulting set is created for every such line on the right-hand side. The content of the column on the left-hand side may be duplicated in this case. If none of the lines on the right-hand side fulfils the join_cond condition, no line is created in the resulting set.
    Resulting set for outer join
    The outer join basically creates the same resulting set as the inner join, with the difference that at least one line is created in the resulting set for every selected line on the left-hand side, even if no line on the right-hand side fulfils the join_cond condition. The columns on the right-hand side that do not fulfil the join_cond condition are filled with null values.
    Note
    If the same column name occurs in several database tables in a join expression, they have to be identified in all remaining additions of the SELECT statement by using the column selector ~.
    Example
    Join the columns carrname, connid, fldate of the database tables scarr, spfli and sflight by means of two inner joins. A list is created of the flights from p_cityfr to p_cityto. Alternative names are used for every table.
    PARAMETERS: p_cityfr TYPE spfli-cityfrom,
    p_cityto TYPE spfli-cityto.
    DATA: BEGIN OF wa,
    fldate TYPE sflight-fldate,
    carrname TYPE scarr-carrname,
    connid TYPE spfli-connid,
    END OF wa.
    DATA itab LIKE SORTED TABLE OF wa
    WITH UNIQUE KEY fldate carrname connid.
    SELECT ccarrname pconnid f~fldate
    INTO CORRESPONDING FIELDS OF TABLE itab
    FROM ( ( scarr AS c
    INNER JOIN spfli AS p ON pcarrid = ccarrid
    AND p~cityfrom = p_cityfr
    AND p~cityto = p_cityto )
    INNER JOIN sflight AS f ON fcarrid = pcarrid
    AND fconnid = pconnid ).
    LOOP AT itab INTO wa.
    WRITE: / wa-fldate, wa-carrname, wa-connid.
    ENDLOOP.
    Example
    Join the columns carrid, carrname and connid of the database tables scarr and spfli using an outer join. The column connid is set to the null value for all flights that do not fly from p_cityfr. This null value is then converted to the appropriate initial value when it is transferred to the assigned data object. The LOOP returns all airlines that do not fly from p_cityfr.
    PARAMETERS p_cityfr TYPE spfli-cityfrom.
    DATA: BEGIN OF wa,
    carrid TYPE scarr-carrid,
    carrname TYPE scarr-carrname,
    connid TYPE spfli-connid,
    END OF wa,
    itab LIKE SORTED TABLE OF wa
    WITH NON-UNIQUE KEY carrid.
    SELECT scarrid scarrname p~connid
    INTO CORRESPONDING FIELDS OF TABLE itab
    FROM scarr AS s
    LEFT OUTER JOIN spfli AS p ON scarrid = pcarrid
    AND p~cityfrom = p_cityfr.
    LOOP AT itab INTO wa.
    IF wa-connid = '0000'.
    WRITE: / wa-carrid, wa-carrname.
    ENDIF.
    ENDLOOP.

  • Using a view to join two tables

    Thank you in advance for any advice you can lend.
    I am using this code in my MySQL db to create a view.
    select
        job.id as job_id,
        umr_cost_calculation.plant_name,
        max(umr_cost_calculation.id) as max_id
    from
        job,
        umr_cost_calculation
    where
        job.id = umr_cost_calculation.job_id
    group by job.id , umr_cost_calculation.plant_name
    I did this so I can join two tables and pull in the most current cost data for a specific plant. The report will, at times, show the wrong (older) data. I can re-run the report, filter to just the one job and see again the wrong data. When I add the max_id to the report, it display the id and updates the report with the correct data. It appears that the view was stale and by adding the ID to the report this fixed the issue.
    1) Is this the best way to make this join? I don't see how Crystal supports a subquery to make a join (this is why I used the view).
    2) If I leave the max_id on the report, will this force the view to always update?

    Try:
    Select
    D1.EmpLoginID,
    Count(D1.ID),
    Count(D1.AlarmCode),
    D1.EmpName,
    D1.EmpAddress,
    D2.Db2Count
    FROM DB1.Data D1
    LEFT JOIN (SELECT
    empLoginID, Count(*) as Db2Count
    FROM DB2.ALL_Database
    WHERE site = 'Atlanta'
    GROUP BY empLoginID
    ) D2
    ON D1.EmpLoginID = D2.EmpLoginID
    GROUP BY D1.empLoginID, D1.EmpName, D2.EmpAddress, D2.Db2Count
    Order BY D1.empLoginID ASC
    For every expert, there is an equal and opposite expert. - Becker's Law
    My blog
    My TechNet articles

Maybe you are looking for

  • ERROR WHILE RUNNING REPORT THROUGH FORMS.....!

    hi all, ive designed one form in Forms 9i...I'm tryin to run report through a Push button .....report is running well in paper layout through report builder 9i...The problem I'm facing is dat when i pressed button it is giving me error initially as F

  • VHS to DV sequence settings to fill screen

    Dear All, I had a 3/4 inch master VHS tape transferred to Mini DV tape. When capturing now from the mini-dv tape through my camera and firewire, is it possible to choose a FCP setting that will fill the canvas so that there is no black on the sides o

  • Exporting audio with video like it was recordedw

    We have shot a ton of video with the dvx-100 and 100a. sometimes final cut captures it weird and i'll have a -03:37 or whatever sync problem. If there is an easier way tell me, i want to export the video after i sync it so I can reimport it and just

  • Reconciliation after upgraded to 2007B

    Dear all... Are there any steps should we do for reconciliation after we upgraded the database to 2007B? Because I noticed that those BP reconciled records are showing when I click on Bank Statement and External Reconciliations -> Reconciliation by c

  • Sample of cost/benefit analysis of data warehouse

    Greeting! I am currently doing a research on data warehouse kindly give me a smple of a cost/benefit analysis. Looking forward for your immedicate response. e-mail me at "[email protected]" Thank you and God Bless! very truly your, Benedict