One Query or Two liinked Queries

hi experts
i want to know what is the better in performance in the report builder is to create one single query with join 2 master and details tables
or
create 2 queries one for each table and link them by datalink
thanks

I don't think you will notice a HUGE difference in performance.
But, I think it would be easier to have everything in one main query then control it with grouping.
Edited by: Kurzweil4 on Sep 8, 2010 3:30 PM

Similar Messages

  • Make one query of two queries?

    I have these two quries, how can I at the best way get the same result in one query?
    --Querie 1
    SELECT 'm' || Year_Month As Month,
    Sum(NET_SALES) As "Net Sales"
    FROM tlbInfo 
    WHERE Year_Month Between '200709' And '200801'
    And record_type IN ('A','X')
    Group by Year_Month
    Order by Year_Month
    --Querie 2
    SELECT 'm' || Year_Month As Month, 
    Sum(STANDARD_MANUF_COST)/Sum(Case When SALES_QUANTITY <> '0' Then SALES_QUANTITY End) As "Cost",
    to_char(100*((sum(NET_SALES)-sum(STANDARD_MANUF_COST))/sum(NET_SALES)) || '%') As "Margin"
    FROM tlbInfo 
    WHERE Year_Month Between '200709' And '200801'
    And record_type NOT IN ('A', 'X')
    And Net_Sales >0
    Group by Year_Month
    Order by Year_Month

    why did you change the 1st query? now you're further from getting the correct answer (not to mention that now my previous post makes no sense).
    put the 1st query back to the way it was. then change the 2nd query to remove the record_type and net_sales criteria from the where clause, and instead put the logic into the select, via a CASE, like the first query is written.
    now look at the two new queries, and ask yourself, what's so hard about making one query?
    and don't do this work in the original post. do it in notepad. and if you want to post the new queries here to get further help, hit the REPLY button, NOT THE EDIT BUTTON

  • Make one query from two

    Hi,
    Could you help optmize this query. If possibel.
    I have three tables: GROUP, GROUP_X_USER, USER.
    If there is a relation between GROUP and USER, it will be stores at GROUP_X_USER.
    Example:
    <tt>
    GROUP               GROUP_X_USER         USER
    1 - GROUP A             1 - 2            1 - MARIO
    2 - GROUP B             1 - 3            2 - JOSE
    3 - GROUP C             2 - 2            3 - MARIA
    </tt>
    That means: JOSE can access groups A and B. MARIA, just group A. MARIO does not
    have a implicit realation, so he can access all groups (A,B and C).
    Clear?
    So... I want to create a sql query that return the groups a given user can
    access. If in my where clause i use "WHERE USER_ID = 2", it should return 2
    lines: GROUP A and GROUP B.
    For users that has a impliciti relation at GROUP_X_USER is a peace of cake query.
    SELECT GROUP.NAME FROM GROUP, GROUP_X_USER, USER
    WHERE GROUP.GROUP_ID = GROUP_X_USER.GROUP_ID
    AND GROUP_X_USER.USER_ID = 2;But, this query does not work for user MARIO.
    Currently, I´m doing this:
    SELECT count(*) INTO wcount FROM GROUP_X_USER WHERE USER_ID = 1;
    if wcount = 0 then
        SELECT GROUP.NAME FROM GROUP;
    else
        SELECT GROUP.NAME FROM GROUP, GROUP_X_USER, USER
         WHERE GROUP.GROUP_ID = GROUP_X_USER.GROUP_ID
           AND GROUP_X_USER.USER_ID = 2;
    end if;
    Can I do this with just one query, whithout need do a count and a "if"?
    PS: My query is actually more complex than this, has 5 tables and a lot of "conditions".
    I made this example just to explain what I need. The goal is to have just one query
    to mantein, because, today, if it needs to change, I need to do it two times.
    Edited by: mcardia on 30/03/2010 12:15
    Edited by: mcardia on 30/03/2010 12:16

    Clear?Sorry, but
    No,since:
    1) you forgot to mention your database version (the result of select * from v$version; )
    2) you've posted unformatted code, which you can (and should) easily adjust by adding the tag before and after your examples.
        see: http://forums.oracle.com/forums/help.jspa for more explanation regarding using tags (scroll a bit down)
        we have no clue regarding columns and/or datatypes you're using now.
    3) please try to put up a small but concisive testcase, using CREATE TABLE and INSERT INTO statements and the results you want from
        that.
    Can I do this with just one query, whithout need do a count and a "if"?
    It probably can be done, but you'd need to be more clear and specific first regarding the already mentioned points.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Query problem, two working queries how to left join together?

    Hello,
    I have a two queries that I have been trying to put together for a couple days. I'm frazzled. Hopefully you can help.
    The first query returns all rows from the database. The second query returns only one row (because the way it is currentlly set up in the Where clause). So I know that will have to change. For each row returned in Query1, I need the two fields from Query2 included
    (so the link would be through client.Id (which is an indexed field) or client.Accountnumber?
    This query, returns all records in the database:
    Select client.Id, client.accountnumber, client.Namelast,
    dmlocation.city ||', '||dmlocation.state as CityState,
    client.salesTerritory_client ||'-'|| dmuser.namefirst_user ||' '|| dmuser.namelast_user as Territory,
    MaxDates.LastRun, client.creditrisk, client.customercategory
    from client
    Left join fctclientcoverage on fctclientcoverage.client_id = client.id
    Left join dmlocation on fctclientcoverage.location_id = dmlocation.id
    Left join dmuser on dmuser.id = client.id
    Left join (Select to_char(Max(dmdate.calendardate),'MM/DD/YY') as LastRun, Client.Id
    from dmdate, client, fctadorder
    where dmdate.id = fctadorder.lastinsert_date_id and client.id = fctadorder.primaryorderer_client_id
    group by client.id) MaxDates ON client.id = MaxDates.Id
    where(fctclientcoverage.Ccoverrecordstopdate Is Null)
    Order by client.namelast;
    Query 2, only returns 1 row, so for each row returned above, the two fields selected in this query should accompany each row. But how to link these two selects using the client.accountnumber (or perhaps by dmcliet.id)?
    Select booked.CurRev, booked.LastRev from (
    Select (sum(Case When dmDate.CalendarDate &gt;= '29-DEC-2008' and dmDate.CalendarDate &lt; '
    Then fctinsertchargedetail.Amount_insertDetail Else 0 End)) As CurRev,
    (sum(Case When dmDate.CalendarDate &gt;= '29-DEC-2007' and dmDate.CalendarDate &lt; '
    Then fctinsertchargedetail.Amount_insertDetail Else 0 End)) As LastRev
    from fctAdorder
    Inner Join client On fctAdorder.primaryorderer_client_id = client.id
    Inner Join fctinsertion On fctAdorder.id=fctinsertion.fctAdorder_id
    Inner Join fctinsertchargesummary On fctinsertion.id=fctinsertchargesummary.insertion_id
    Inner Join dmDate On fctinsertion.insert_date_id=dmDate.id
    Inner Join fctinsertchargedetail On fctinsertchargesummary.id=fctinsertchargedetail.insertchargesummary_id
    WHERE client.accountnumber = '12345678' and
    dmDate.CalendarDate &gt;= '29-DEC-2007' And dmDate.CalendarDate &lt; ') booked;
    Thanks for your time.

    Yes, You are correct!
    I just recently got the query working with the aid of another forum.
    The sad part is, all though the first query took 11 seconds to return 180,000 rows (thats good); The second query took 4 minutes to calculate and return all it's rows (that's bad). Together the query ran for over 4 minutes. Way too slow.
    Being brand new to oracle I have to try and figure away to cut this time down. Perhaps I'm not considering something?
    I orginally brought into my .net app the results from the first query and then in the rowdatabound event I queried each row to get the information needed from the second query. That was way too slow also. It was recommended to try and return all needed data at once.
    I've been given a task to emulate a current application, (which I do not have access to it's code), that brings back all of this same information that I am using. It only takes them maybe 15 seconds to run, to bring back all. Of course they were experienced oracle sql developers.
    So I guess my next step is to try and improve that second query. Thanks for replying to this Frank. I'll be back. Are you or is anyone good at knowing how to optimzie queries? I'm reading a book now trying out suggestions. Nothing is working yet.
    thanks

  • CR 4 Ent, Xcelsius and WebI - one query and two different results

    Dear Sirs,
    I'm using BO 4.0 platform and 3 tools: Crystal Reports for Enterprise, WebI and Dashboard Design (Xcelsius).
    I have one question, because in my opinion in this solution is one inconsistency.
    I have one table in SQL Server (like below):
    IDRec (autoinc)  | Col1 (varchar)   | Col2 (int)
    1      A    1
    2      A    1
    3      B    2
    4      B    2
    I have one universe with ONLY 3 dimensions (IDRec, Col1, Col2). I haven't any measures.
    And:
    1. Using CR 4 Ent and I create report using 3 dimensions (IDRec, Col1, Col2).
    I make sure, that I selected option: "Retrieve duplicate rows"
    If I have 3 columns in details I have 4 records (4 rows) in my report, when I have 2 columns (Col1 Col2) I have only 2 records (2 rows) in report (Page view).
    So universe (or something like this) use option DISTICT (I think).
    2. When I use WebI (14.0.2) I have the same situation.
    3. When I use Dashboard Desigm (Xcelsius 2011) I have 4 rows !!!  ALWAYS - it doesn't matter I selected "Retrieve duplicate rows" or not  !!!
    When I look to "View script" window, I not see DISTINCT clause.
    Am I doing something wrong?
    I can change the settings so as to be able to see duplicate records?
    It's very important for some calculation, especially in Crystal Reports (for Enterprise).

    Hi,
      Thanks for the response...But the result is deviating from the expected..
           expected is
         if we have first query returns              second query returns
                  1                                                     4
                  2                                                     5
                  3                                                     6
         these two queries result should be in one table , with first query result in first column and second query result in second column.
       The two queries fetching data from same table(category table as in my post) with different search criteria( in where clause).......Regards,
    Rakesh.

  • One query on two databases acts differently.

    Hi - this is a doozy. I'd Ask Tom but I think he's busy...
    Database-A = PRODUCTION
    Database-B = TEST
    Both databases run 9.2.0.8, the parameter files in use are the same (so all optimizer settings etc are equal). The table spaces were created equally.
    One difference is that 'A' uses an overloaded SAN and 'B' is on a different one with plenty of bandwidth - though the problem sounds to me like a database optimizer issue, anyway...
    'B' schema was created from export/import of 'A'.
    The schemas have both been analyzed the same way (and both do each night).
    The problem is here that on 'B' the query uses the PK index on one of the tables whereas on 'A' the same query does not use the PK index.
    Note: There are slightly fewer rows in 'B' as 'A' is prod and getting updated.
    Already ruled out:
    optimizer_index_cost_adj: this is set to 100 on both databases and dropping it to 50, 10, 5 and 1 on 'A' does not make the optimizer favour the index.
    Stored outlines may not be an option for this query as we cannot alter the application code and the query changes....
    Any ideas where should I look next?
    Ta!

    Thanks to both the above comments.
    I did think about the data clustering but I kept
    coming back to why the optimizer on 'A' said "I want
    a full table scan" and 'B' says, "oh hey, there's an
    index, I'll use that".This has nothing to do with clustering data.
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/statviews_1069.htm#i1578369 - look for 'Clustering Factor'
    Also see Note:39836.1
    IN a nutshell - it tells the system how bad an index could be when considering the organization of the table. A table (not index) reorg could easily change the clustering factor, give the same index for the same table with exactly the same data (but different row order) a completely different value.

  • Two separate queries in one report

    Hi Gurus,
    Is it possible to make two separate queries in the same worksheet (I need to have a column in my report from a different query from this report). As we can have more than one query in Oracle Reports, similarly, is it possible to have more than one query in Oracle Discoverer Report.
    Thanks,
    Pooja

    The functionality your looking for is not available in Discoverer today. You can have two separate worksheets within Discoverer, one to run each query. Another option is only available in Discoverer Desktop, it is called a subquery which allows you to run one query and then pass the results as a parameter into your workbook. However, I don't believe either of those options resolve the problem your looking to solve.
    Matt Topper
    TUSC, The Oracle Experts
    [email protected]

  • Problem in query jump from one sender and two receivers

    Hello all,
    My requirement is to jump from one query to another two queries. The sender comes from infoCube A and receivers comes from ODS B and ODS C (ODS C is a copy of ODS B). The problem is that when I execute the first jump a pop up appears with a selection date. This issue does not happen when I execute the second jump (and the selection date is needed). Target queries are identical, and I don´t know what is happening.
    Any ideas?
    Thanks in advance.
    Carmen

    Hi Carmen,
    I think you have used the same variable for the day selection for the query on ODS C and ODS B. Hence when you fill it for the first time it does not ask you at the second instance.
    Regards.

  • Combining Sum/Case queries with different where clauses into one query

    Hello,
    I'm trying to combine 2 queries that contain the SUM/CASE function into one query that'll produce the output in the same table, rather than having two The thing is, the two queries have different conditions. I've created a sample data table and outputs to better describe what I'm trying to achieve.
    SAMPLE_DATA
    DEPT
    PROD_CODE
    FLAG1
    FLAG2
    HO
    A
    NULL
    Y
    HO
    B
    NULL
    Y
    HO
    A
    Y
    NULL
    HO
    B
    Y
    Y
    IT
    A
    NULL
    Y
    IT
    C
    NULL
    NULL
    ENG
    B
    NULL
    Y
    ENG
    C
    NULL
    Y
    ENG
    C
    Y
    Y
    MKT
    A
    Y
    Y
    The first query I'm running is to sum the product codes department wise while checking if FLAG1 is Y. The second query is checking if FLAG2 is Y.
    First Query:
    select DEPT, sum(case PRODUCT_CODE when 'A' then 1 else 0 end),
    sum(case PRODUCT_CODE when 'B' then 1 else 0 end),
    sum(case PRODUCT_CODE when 'C' then 1 else 0 end)
    from SAMPLE_DATA where FLAG1 is not null group by DEPT;
    Second Query:
    select DEPT, sum(case PRODUCT_CODE when 'A' then 1 else 0 end),
    sum(case PRODUCT_CODE when 'B' then 1 else 0 end),
    sum(case PRODUCT_CODE when 'C' then 1 else 0 end)
    from SAMPLE_DATA where FLAG2 is not null group by DEPT;
    FIRST QUERY OUTPUT:
    DEPT
    PRODA_FL1
    PRODB_FL1
    PRODC_FL1
    HO
    1
    1
    0
    IT
    0
    0
    0
    ENG
    0
    0
    1
    MKT
    1
    0
    0
    SECOND QUERY OUTPUT:
    DEPT
    PRODA_FL2
    PRODB_FL2
    PRODC_FL2
    HO
    1
    2
    0
    IT
    1
    0
    0
    ENG
    0
    1
    2
    MKT
    1
    0
    0
    My aim is to combine both the queries so that the output is displayed the same way as the table below.
    DESIRED OUTPUT:
    DEPT
    PRODA_FL1
    PRODB_FL1
    PRODC_FL1
    PRODA_FL2
    PRODB_FL2
    PRODC_FL2
    Any help or tips will be greatly appreciated. Please note I'm working with more complex data and have simplified my question just to understand how to solve this.

    Just treat the two queries as tables, join them on DEPT and produce the results you want.
    with q1 as (
    select DEPT, sum(case PRODUCT_CODE when 'A' then 1 else 0 end) PRODA_FL1,
    sum(case PRODUCT_CODE when 'B' then 1 else 0 end) PRODB_FL1,
    sum(case PRODUCT_CODE when 'C' then 1 else 0 end) PRODC_FL1
    from SAMPLE_DATA where FLAG1 is not null group by DEPT),
    q2 as (
    select DEPT, sum(case PRODUCT_CODE when 'A' then 1 else 0 end) PRODA_FL2,
    sum(case PRODUCT_CODE when 'B' then 1 else 0 end) PRODB_FL2,
    sum(case PRODUCT_CODE when 'C' then 1 else 0 end) PRODC_FL2
    from SAMPLE_DATA where FLAG2 is not null group by DEPT;
    select q1.dept, proda_fl1, prodb_fl1, prodc_fl1, proda_fl2, prodb_fl2, prodc_fl2
    from q1, q2
    where q1.dept = q2.dept

  • How to fetch the data into one out parameter from two different queries

    Hi,
    I have an a problem how to implement condition in above procedure,and scenario is
    i have to get the output into one out parameter from two queries.i.e if one query data is null
    then i have to pick out data from another query into same out parameter.
    CREATE OR REPLACE PROCEDURE GET_POLICIESMAP_BASEDON_GHPLID(I_COMPANYID IN NUMBER,
    I_CARDID IN VARCHAR2,
    PR_RESULTSET OUT SYS_REFCURSOR) IS
    /* LOC_INSUREDID VARCHAR2(200);
    LOC_RELATIONCODE VARCHAR2(200);
    LOC_CURRENTPOLICYID VARCHAR2(4000);*/
    BEGIN
    OPEN PR_RESULTSET FOR
    WITH A AS
    (SELECT DISTINCT PM.MAINPOLICYID MAINPOLICYID,
    id INSUREDID,
    RELATIONCODE,
    CURRENTPOLICYID
    from INSUREDPERSONS IP
    LEFT OUTER JOIN POLICIES_RULES_MAPPING PM
    ON PM.POLICYID = IP.Currentpolicyid
    where EIN IN (SELECT EIN
    FROM INSUREDPERSONS ipp
    JOIN VW_INSUREDINFO vw
    ON IPP.ID = vw.insuredid
    and vw.cardid = I_CARDID)
    AND IP.CURRENTPOLICYID in
    (SELECT ID
    from policies
    where companyid = I_COMPANYID
    and dead = 0
    AND POLICYTO > SYSDATE - 1))
    SELECT INSUREDID, RELATIONCODE, CURRENTPOLICYID
    FROM A
    WHERE RELATIONCODE = 0
    AND (A.MAINPOLICYID is null or
    RELATIONCODE = 0 AND CURRENTPOLICYID = MAINPOLICYID)
    UNION
    SELECT INSUREDID, RELATIONCODE, CURRENTPOLICYID
    FROM A
    WHERE RELATIONCODE > 0;
    /* HERE I NEED TO GET THE DATA FROM THIS BELOW QUERY INTO SAME OUT PARAMETER
    WHEN ABOVE QUERY DATA CONTAINS NULLS */
    /* IF PR_RESULTSET IS NULL THEN*/
    OPEN PR_RESULTSET FOR
    WITH A AS
    (SELECT DISTINCT PM.MAINPOLICYID MAINPOLICYID,
    id INSUREDID,
    RELATIONCODE,
    CURRENTPOLICYID
    from INSUREDPERSONS IP
    LEFT OUTER JOIN POLICIES_RULES_MAPPING PM
    ON PM.POLICYID = IP.Currentpolicyid
    where FAMILYID IN (SELECT FAMILYID
    FROM INSUREDPERSONS ipp
    JOIN VW_INSUREDINFO vw
    ON IPP.ID = vw.insuredid
    and vw.cardid = I_CARDID)
    AND IP.CURRENTPOLICYID in
    (SELECT ID
    from policies
    where companyid = I_COMPANYID
    and dead = 0
    AND POLICYTO > SYSDATE - 1))
    SELECT INSUREDID, RELATIONCODE, CURRENTPOLICYID
    FROM A
    WHERE RELATIONCODE = 0
    AND (A.MAINPOLICYID is null or
    RELATIONCODE = 0 AND CURRENTPOLICYID = MAINPOLICYID)
    UNION
    SELECT INSUREDID, RELATIONCODE, CURRENTPOLICYID
    FROM A
    WHERE RELATIONCODE > 0;
    /* END IF;*/
    END GET_POLICIESMAP_BASEDON_GHPLID;
    Thanks in Advance,
    vvr.

    SELECT DISTINCT PM.MAINPOLICYID MAINPOLICYID,
                           id              INSUREDID,
                           RELATIONCODE,
                           CURRENTPOLICYID
             from INSUREDPERSONS IP
             LEFT OUTER JOIN POLICIES_RULES_MAPPING PM
               ON PM.POLICYID = IP.Currentpolicyid
            where EIN IN (SELECT EIN
                            FROM INSUREDPERSONS ipp
                            JOIN VW_INSUREDINFO vw
                              ON IPP.ID = vw.insuredid
                             and vw.cardid = I_CARDID)In this code
    where EINEIN is a column in INSUREDPERSONS?
    and in the sub query below
    (SELECT EIN
                            FROM INSUREDPERSONS ipp
                            JOIN VW_INSUREDINFO vw
                              ON IPP.ID = vw.insuredid
                             and vw.cardid = I_CARDID)EIN belongs to INSUREDPERSONS or VW_INSUREDINFO?
    Please use Alias as we dont know your table structure.

  • Update SAME column name in two tables from ONE query

    Dear All Seniors
    Please tell me is it possible to update a same column name in two tables.
    I have two tables in same schema
    (1)table name
    pem.igp_parent
    column name
    igp_no.
    igp_type
    (2)table name
    pem.igp_child
    column name
    igp_no.
    igp_type
    i want to update igp_no column in one query please tell me how it would be possible.
    thanks
    yassen

    You want to update the data from what to what? Where is the new data coming from?
    If you are trying to put the same data in two different tables, that strongly implies that you have a normalization problem that needs to be addressed.
    Why do you want a single query rather than updating each table in turn? Can you join the two target tables to produce a key-preserved view?
    Justin

  • How can i write two ?DDL in one query

    how can i write two ?DDL statment in one query?

    Issuing two DDL statements requires two edxecutions. Getting around it is possible by creating a procedure that issues the two DDL statements. But they would still have to be issues one at a time, but you would only have to write one statement to invoke it.

  • Two different results using one query

    Hi Friends
    Oracle version that I am using is : Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production
    With the Partitioning, OLAP and Data Mining options
    I have a scenario where one account can be related to two customers. Hence, in table have many rows for one account. Here’s the sample data:
    Account_ID | product_code | cust_id | relationship_code | entity_code
    1111 | ABC | 1234 | SOL | CUST
    1111 | ABC | 2222 | ZZZ | LINK
    1111 | ABC | 4455 | ABC | LINK
    2222 | ABC | 7890 | SOL | CUST
    2222 | ABC | 5678 | ZZZ | LINK
    3333 | JFK | 5878 | TST | CUST
    3333 | JFK | 3254 | PRI | CUST
    3333 | JFK | 3299 | PRI | CUST
    4444 | JFK | 2535 | SOL | CUST
    4444 | JFK | 4565 | SOL | CUST
    5555 | DEF | 6666 | PRI | CUST
    5555 | DEF | 6667 | TST | CUST
    5555 | DEF | 9667 | TST | CUSTIn this scenario, I need two outputs differently:
    Output 1: When an account has relationship_code = ‘SOL’ then take the least cust_id
    1111 | ABC | 1234 | SOL | CUST
    2222 | ABC | 5678 | ZZZ | LINK
    4444 | JFK | 2535 | SOL | CUST Output 2: else take the highest cust_id
    3333 | JFK | 5878 | TST | CUST
    5555 | DEF | 9667 | TST | CUSTHow can I get this result using one query?

    Not sure what you mean. Works OK:
    SQL> with t as (
      2             select 1111 account_ID,'ABC' product_code,1234 cust_id,'SOL' relationship_code,'CUST' entity_code from dual union all
      3             select 1111,'ABC',2222,'ZZZ','LINK' from dual union all
      4             select 1111,'ABC',4455,'ABC','LINK' from dual union all
      5             select 2222,'ABC',7890,'SOL','CUST' from dual union all
      6             select 2222,'ABC',5678,'ZZZ','LINK' from dual union all
      7             select 3333,'JFK',5878,'TST','CUST' from dual union all
      8             select 3333,'JFK',3254,'PRI','CUST' from dual union all
      9             select 3333,'JFK',3299,'PRI','CUST' from dual union all
    10             select 4444,'JFK',2535,'SOL','CUST' from dual union all
    11             select 4444,'JFK',4565,'SOL','CUST' from dual union all
    12             select 5555,'DEF',6666,'PRI','CUST' from dual union all
    13             select 5555,'DEF',6667,'TST','CUST' from dual union all
    14             select 5555,'DEF',9667,'TST','CUST' from dual union all
    15             select 6666,'XYZ',8877,'SOL','CUST' from dual
    16            )
    17  select  account_ID,
    18          product_code,
    19          cust_id,
    20          relationship_code,
    21          entity_code
    22    from  (
    23           select  account_ID,
    24                   product_code,
    25                   cust_id,
    26                   relationship_code,
    27                   entity_code,
    28                   case max(case relationship_code when 'SOL' then 1 else 0 end) over(partition by account_ID)
    29                     when 1 then dense_rank() over(partition by account_ID order by cust_id)
    30                     else dense_rank() over(partition by account_ID order by cust_id desc)
    31                   end rnk
    32             from  t
    33          )
    34    where rnk = 1
    35  /
    ACCOUNT_ID PRO    CUST_ID REL ENTI
          1111 ABC       1234 SOL CUST
          2222 ABC       5678 ZZZ LINK
          3333 JFK       5878 TST CUST
          4444 JFK       2535 SOL CUST
          5555 DEF       9667 TST CUST
          6666 XYZ       8877 SOL CUST
    6 rows selected.
    SQL> SY.

  • One Query, Two Datasources

    Is there a way to run a query on two separate datasources? I
    would like to compare the data in two separate MS Access databases.
    Thanks.

    You won't be able to combine two datasources in one cfquery,
    so one way might be for you to query each datasource, then compare
    the two results using a Q-of-Q.
    Phil

  • How can update two rows in one query?

    How can update two rows in one query?
    Edited by: OracleM on May 4, 2009 12:16 AM

    What do you mean with "two rows"? May be two columns??
    If the where clause of UPDATE query matches two rows, then it will update two rows. If you want to update two columns, then add column names to your query
    UPDATE your_table SET col1=value1, col2=value2 WHERE your_where_clause- - - - - - - - - - - - - - - - - - - - -
    Kamran Agayev A. (10g OCP)
    http://kamranagayev.wordpress.com
    [Step by Step install Oracle on Linux and Automate the installation using Shell Script |http://kamranagayev.wordpress.com/2009/05/01/step-by-step-installing-oracle-database-10g-release-2-on-linux-centos-and-automate-the-installation-using-linux-shell-script/]

Maybe you are looking for

  • Open Close Periods

    Hi,    I have a requirement that access to the transaction for OPEN CLOSE PERIODS    (S_ALR_87003642) needs to be provided only to the users who are authorized    to open close periods for specific company codes. This transaction does not    have a u

  • Questions on Federated Portal Network

    Hi All, I have a few questions on Federated Portal Network. Please if someone can provide appropriate answers It is said that the look n feel will be same. Will the consumer have the look n feel of the producer or the producer application will have t

  • Installing windows on macbook pro without bootcamp. Will this allow for switchable graphics?

    Hi everyone, I was thinking of buying a new Macbook Pro Retina 15 Inch with the discrete nvidia graphics card inbuilt with it. I love windows and I am planning on running windows 7/8 on the macbook pro as my primary OS (because of advantages of gamin

  • How to remap Ctrl + Mouse click

    Hi, I searched but couldn't find an answer. My kid tore a handful of keys out of my PowerBook keyboard. I fixed most of them (to my surprise), apart from the Ctrl key which was torn out 'with meat', so to speak - it now wobbles and falls off every ti

  • Soting a vector of objects by an element of an object

    Hi, I have been stuck on this part of my program for ages and I really need some help urgently as I need to submit my coursework. I need to create a comparator for the serialnumber of each questionnaire that is stored in a vector. Here is the coding: