Application of distribution for the bucket a bound column

Hello

I need connect chain for the table data and assign a number of unique to those bucket.
Here is the example (Col1 and Col2 are the table columns and bucket is aquery column):

| Col1 | Col2. Bucket |
| A1 | B1 | 1.
| A1 | B2 | 1.
| A2 | B2 | 1.
| A3 | B3 | 2.
| A4 | B3 | 2.
| A4 | B4 | 2.
| A5 | B2 | 1.

In the above example you can see that there is a string A1-> B2-> A2 and A5, so they have the same number of bucket 1. It is also interesting to note that all lines containing A1 in Col1 will reside in the same compartment, and therefore A1-> B1 is assigned also bucket 1.
Another example is a String->->-> B4 A4 B3 A3 and therefore have bucket number 2.

I tried the hierarchical queries, but wasn't able to get the desired result.

Can anyone suggest an approach or a query?

Thanks in advance.

Rgds,
AKS.

Hi, Aks,

We don't know what you want.
Do you want to assign the bucket such that all rows that have the same value of col1 or col2 the same value receive the same number of bucket?

Maybe you want something like this:

WITH     got_relatives     AS
(
     SELECT     col1
     ,     CONNECT_BY_ROOT col2     AS relative
     FROM     table_x
     CONNECT BY NOCYCLE     col1     = PRIOR col1
             OR          col2     = PRIOR col2
)
,     got_bucket     AS
(
     SELECT       col1
     ,       DENSE_RANK () OVER ( ORDER BY  MIN (relative)
                               ) AS bucket
     FROM      got_relatives
     GROUP BY  col1
)
SELECT       x.*
,       b.bucket
FROM       table_x     x
JOIN       got_bucket     b  ON     x.col1     = b.col1
;

I hope that answers your question.
If not, post CREATE TABLE and INSERT to your sample data and results statements you like from these data (otherwise what you've posted already).
Explain, using specific examples, how you get these results from these data.

Always tell what version of Oracle you are using. This is particularly important with CONNECT BY queries, because each version since Oracle 7 has had major improvements in this area.

You will answer sooner if you always include this information whenever you have a question.

Tags: Database

Similar Questions

  • How to check what Qt application is run for the first time?

    How to check what Qt application is run for the first time? I need for the creation of trial version of my application. Any help is greatly appreciated

    Probably use file data and put an I_ran_at_least_one_time file and verify its existence. This file is not accessible to the user and is not changed even if you upgrade the application.

  • Adobe Application Manager, necessary for the verification of your driver's license, is missing or damaged.

    Adobe Application Manager, necessary for the verification of your driver's license, is missing or damaged. It appears each time I open a program from adobe. I downloaded the Manager, but he did that update hasdobe asks Manager.Please if you have an answer answer to me.

    N ° 1)

    Launch the Task Manager, click on the more details and end Adobe all related tasks.

    Step 2)

    Go to C: > Program (x 86) > " common files" > Adobe.

    Open the Adobe folder and delete files named Adobe Application Manager and OOBE.                  [Important]

    Impossible to remove? try to rename. as old OOBE. and Adobe Application Manager old.

    Step 3)

    Click on the link below and download Adobe Application manager and install the same:

    http://download.adobe.com/pub/Adobe/creativesuite/CC/Win/ApplicationManager9.0_all.exe

    Once the installation is complete, look for the icon of Adobe Application Manager launch on desktop and double-click it.

    It will start the update process.

    Once the update is complete, launch applications CC and check.

  • generation of application cRIO ask for the path to the file

    Hello

    to create an application for the cRIO startup, I have an error in the constructor. Every time he asks me to build the path of a vi. But the path of the Subvi is already known by the project.

    How to remove the error?

    Wilbur

    PS: in the snapshot the right path of the vi indicated, but every time I need to select manually by using the "Browse..." button ».

    problem solved:

    http://forums.NI.com/NI/board/message?board.ID=170&thread.ID=499424

  • CUCM v8.5 with 3 SIP Trunks to the Lync Server - Route algorithm of Distribution for the Group

    I CUCM connected to three different Lync server via 3 different SIP trunks.

    RG is composed of the following elements:

    LYNC SIP TRUNK 1 (1.1.1.1)

    LYNC SIP TRUNK 2 (2.2.2.2)

    LYNC SIP TRUNK 3 (3.3.3.3)

    The route group was built with "Top Down" the algorithm of distribution. The first SIP trunk knows congestion and some calls are never routed to secondary and tertiary SIP trunks.

    Based on all the forum posts I've seen - it seems that I have to configure the algorithm of group distribution of ranges as 'circular '.

    If I change the algorithm group of "Circular" lines - can I expect the following results:

    1. first call will go through LYNC SIP TRUNK 1

    2. second call will cross LYNC SIP TRUNK 2

    3. third call will cross LYNC SIP TRUNK 3

    When I change the algorithm of distribution of the route to the 'circular' group and click 'SAVE', I am invited on "RESET".  This service assigns to the existing calls through SIP Trunks?

    TIA,

    Amir

    Hello

    the circular algorithm will work the way you mentioned, but I suggest to try and make sure that is not perform integration

    to reset the SIP trunk actually active calls should not be made because the gose media directly between endpoint unles syou use something like trust rely wher evous enforce calls to go to the SIP

    Therefore, in most cases is should be fine just try configuration at the time of the calls will face service disruption

    hope this helps

  • How Oracle called the hidden for the function-based index columns?


    I came across an interesting problem today.  Statistics object for a schema that have been created on the basis of data X have been imported into a 'identical' to the database schema Y.

    The problem is that, on the basis of data X a group of hidden columns associated with index based service (FBIs) were named SYS_NC00182$ to SYS_NC00191$ and on the basis of data Y the same hidden columns were named SYS_NC00183$ to SYS_NC00192$!  The consequence was that statistical column for an FBI data base X have been used for a totally different FBI on the database Y.

    Now, of course, if this was g 11 or 12 c I could just create virtual columns and those of the index.  In this way the names of the columns would be compatible on databases.  However, it is a 10g database, and I do not have this option.

    I am curious to understand how Oracle generates these hidden column names.  I'm also curious if, in 10g, there is a way to identify the name of a column hidden for an FBI that doesn't involve a statement explain plan running on a query that uses all the expressions of the FBI for the table.

    The names of $ SYS_NCnnnnn are based on the internal column id - what is loosely based on the order of creation of the FBI. If you delete a column the column internal ids (after this column), which means the names for the SYS_NCnnnnn$ the change.  An opportunity to explain your results is that a (real) column on the X data table fell, but the column still exists on the database Y.

    If you want to get the link between the current internal name and expression, then you can start with dba_ind_expressions - and create a customized version of the view - e.g @.

    Select c.intcol #, c.name, io.name, idx.name, bo.name, base.name, c.default$, ic.pos #.

    of sys.col$ c, sys.obj$ idx, basis of sys.obj$, sys.icol$ ic.

    sys. User$ io, sys.user$ bo, sys.ind$ I

    where bitand(ic.spare1,1) = 1 / * expression * /.

    and (bitand (students, 1024) = 0) / * not bmji * /.

    and ic.bo # c.obj = #.

    and ic.intcol # c.intcol = #.

    and ic.bo # base.obj = #.

    and io.user # idx.owner = #.

    and bo.user # base.owner = #.

    and ic.obj # idx.obj = #.

    and idx.obj # i.obj = #.

    and however # (1, 2, 3, 4, 6, 7, 9)

    /

    The first two columns in the select ones that I added to the initial view definition.

    Concerning

    Jonathan Lewis

  • Application of GL for ACH requires an empty column

    This is a very basic question...

    I am writing a SQL query to extract information from GL engine of our company. The ACH format requires the format of the file to include columns of 'filler' that contains a single space.

    SQL help, I can extract all the information. How can I add columns to fill to the output of the query?

    Finally it will be spoulées on an encrypted file and send to JPM Chase as a "check register".

    Check it out:

    SQL> select dummy, chr(32), dummy from dual
      2  /
    
    D C D
    - - -
    X   X
    
    SQL>
    

    Cheers, APC

    blog: http://radiofreetooting.blogspot.com

  • How to choose a different application to use for the Split Mode on iPad?

    I have an iPad 2 air, and after going through a lot more effort this should take, I finally understood how to make the app to split mode. Only problem? Each time the app is FaceTime. How to get that app comes

    Drag a straight edge to open the sharing pane. Then drag the top downwards to close the current application and display the list of available applications.

  • Tengo a problemas no con mi CD recorder no leer el disco can there's lo lo there is the doble click sale none is ha sown application muchas gracias for the help.

    Means - This is a foro Público para as nunca publicar information privada como el correo electronico o phone numbers!

    Ideas:

    • Programs are having problemas con
    • Error messages
    • Los recent changes made in su equipo
    • What is han intentado did el problema

    I'm sorry, but these Vista Help Forums only provide support in English.

    http://support.Microsoft.com/common/international.aspx

    To ensure that you receive support appropriate for your location information, select your region setting in the list on the link above and then click the arrow button.

    Thank you.

    Mick Murphy - Microsoft partner

  • Create application Viewer customized for the iPad and iPhone

    This question has been posted in response to the following article: http://help.Adobe.com/en_US/digitalpubsuite/using/WS67cb9e293e2f1f60c5dd08612e5ea7d27f-7FF e.html

    Have you created a multi-folio Viewer? If so, what Adobe ID specified you in the title ID field. A multi-folio application doesn't include any folio which is cooked in. Instead, it fills with all published folios library using the account ID of title. In some cases, people publish folios by using an account that is not the title ID, and they ask why their folios are not displayed.

    If you create a single-folio application (with regard to simple editing / CC), you must specify the folio that gets cooked in your application.

  • Y at - it a creative cloud to display application / web part for the sharing of my browser (no conference call necessary)?

    I have used join.me and goto meeting but do not need the strong features, just a link to share my browser with several people on a conference call on my deck of existing telephone system.  Is there a CC tool / app that would make this service?   Other recommendations?

    What is in all of the cloud http://www.adobe.com/creativecloud/catalog/desktop.html - I don't see a screen sharing program

  • JavaScript for the sum of a column cells

    Hi all -

    I have a table in expansion (lines can be added) and I am using the line of the column footer to calculate the average of the cells which do not have the value 0.

    Form Calc is usually great, but in this case, I need to divide the sum by the number of cells that are not zero and I don't know how to do this via form Calc.

    Successfully used javascript to identify the total number of occurrences and identify the number of instances that are zero, then the part of the denominator of the equation is fine. (Number of cases - number of zeros = denominator.)

    Now, it's just the numerator. There must be a loop, right?

    Is called table: table1

    Line is called: data

    cell is called: rated

    Any thoughts? Or more effective methods? Thank you very much.

    B

    Hello

    a solution in FormCalc could look this way:

    form1.#subform[0].table1.footer.sum::calculate - (FormCalc, client)
    var c = 0
    var s = 0
    for i = 0 upto (_data.count - 1) do
      if (data[i].eValue gt 0) then
      c = Sum(c, 1)
      s = Sum(s, data[i].eValue)
      endif
    endfor
    
    if (s gt 0 and c gt 0) then
      $ = Round(s / c)
    else
      $ = 0
    endif
    

    Put this scriot in the calculate of the cell of the footer line event.

  • A simple query to write for the SUM of a column

    Hello

    I have a Quantity column. I want his total.
    For a PURCHASE, I would like to add the value in the column Qunatity.
    For a COPY, I want to subtract the value in the column Qunatity.
    So overall, the sum of the column should give me total buy less total sells.

    Any help is welcome.
    Thank you.

    Published by: TechVortex on August 11, 2011 11:49

    Like this?

    SQL> ed
    Wrote file afiedt.buf
    
      1  with sample_data as
      2  (
      3  select 100 quantity, 'B' flag from dual union all
      4  select 200, 'B' from dual union all
      5  select 100, 'S' from dual union all
      6  select 500, 'B' from dual union all
      7  select 200, 'S' from dual
      8  )
      9  SELECT SUM(quantity),
     10         SUM(DECODE(flag, 'B', quantity,
     11                          'S', -quantity)) absolute_sum
     12* FROM   sample_data
    SQL> /
    
    SUM(QUANTITY) ABSOLUTE_SUM
    ------------- ------------
             1100          500
    
  • How to use multiple columns for the bookmarks instead of column 1

    Bookmarks always appear in a single column. As I have a lot you have to scroll to see all.

    How can I set bookmarks in several columns so that I can see them all at the same time.

    You can use the above. The Bookmark Manager works just like the
    folders on your computer. Create folders by using the sort and general name
    your list in these files. In addition, when you open the Manager, it
    a search box is at the top right.

  • SQL for the sum of a column while avoiding the repetition of values

    Dear all
    I have this table called Loans_installments that contains the client's loan payments.

    sample data:
    the client_id loan_no inst_mat_date inst_seq original_inst_amt int_amt currency management
    110 2 222 100 1/1/2013 1 0 50
    110 2 222 100 1/2/2013 2 0 52
    110 2 222 100 1/3/2013 3 0 54
    110 2 222 100 1/4/2013 4 500 90
    110 2 222 100 1/5/2013 5 0 50
    110 2 222 100 1/6/2013 6 0 51
    110 2 222 100 7/1/2013 7 0 50
    110 2 222 100 1/8/2013 8 600 105
    110 2 222 100 1/9/2013 9 0 50
    110 2 222 10 100 1/10 / 2013 0 54
    110 2 222 100 1/11 / 2013 11 0 50
    110 2 222 100 1/12 / 2013 12 700 120



    now what I want to do the sum of int_amt field based on original_inst_amt value (0 or a value) and put the result on the int_amt who has an orig_inst_amt value <>0.

    the result should be like this:


    the client_id loan_no inst_mat_date inst_seq original_inst_amt int_amt currency management
    110 2 222 100 1/1/2013 1 0 0
    110 2 222 100 1/2/2013 2 0 0
    110 2 222 100 1/3/2013 3 0 0
    110 2 222 100 1/4/2013 4 500 246
    110 2 222 100 1/5/2013 5 0 0
    110 2 222 100 1/6/2013 6 0 0
    110 2 222 100 7/1/2013 7 0 0
    110 2 222 100 1/8/2013 8 600 256
    110 2 222 100 1/9/2013 9 0 0
    110 2 222 100 1/10 / 2013 10 0 0
    110 2 222 100 1/11 / 2013-11 0 0
    110 2 222 100 1/12 / 2013 12 700 274


    any help please.

    With the help of the clause type

    SQL> with t
      2  as
      3  (
      4  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/1/2013','mm/dd/yyyy') inst_mat_date, 1  inst_seq, 0   original_inst_amt, 50 int_amt from dual
      5  union all
      6  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/2/2013','mm/dd/yyyy') inst_mat_date, 2  inst_seq, 0   original_inst_amt, 52 int_amt from dual
      7  union all
      8  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/3/2013','mm/dd/yyyy') inst_mat_date, 3  inst_seq, 0   original_inst_amt, 54 int_amt from dual
      9  union all
     10  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/4/2013','mm/dd/yyyy') inst_mat_date, 4  inst_seq, 500 original_inst_amt, 90 int_amt from dual
     11  union all
     12  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/5/2013','mm/dd/yyyy') inst_mat_date, 5  inst_seq, 0   original_inst_amt, 50 int_amt from dual
     13  union all
     14  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/6/2013','mm/dd/yyyy') inst_mat_date, 6  inst_seq, 0   original_inst_amt, 51 int_amt from dual
     15  union all
     16  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/7/2013','mm/dd/yyyy') inst_mat_date, 7  inst_seq, 0   original_inst_amt, 50 int_amt from dual
     17  union all
     18  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/8/2013','mm/dd/yyyy') inst_mat_date, 8  inst_seq, 600 original_inst_amt, 105 int_amt from dual
     19  union all
     20  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/9/2013','mm/dd/yyyy') inst_mat_date, 9  inst_seq, 0   original_inst_amt, 50 int_amt from dual
     21  union all
     22  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/10/201','mm/dd/yyyy') inst_mat_date, 10 inst_seq, 0   original_inst_amt, 54 int_amt from dual
     23  union all
     24  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/11/201','mm/dd/yyyy') inst_mat_date, 11 inst_seq, 0   original_inst_amt, 50 int_amt from dual
     25  union all
     26  select 110 branch, 2 currency, 222 client_id, 100 loan_no, to_date('1/12/201','mm/dd/yyyy') inst_mat_date, 12 inst_seq, 700 original_inst_amt, 120 int_amt from dual
     27  )
     28  select branch
     29       , currency
     30       , client_id
     31       , loan_no
     32       , inst_mat_date
     33       , inst_seq
     34       , original_inst_amt
     35       , decode(original_inst_amt, 0, 0, sum(int_amt) over(partition by cnt)) int_amt
     36    from (
     37            select branch
     38                 , currency
     39                 , client_id
     40                 , loan_no
     41                 , inst_mat_date
     42                 , inst_seq
     43                 , original_inst_amt
     44                 , int_amt
     45                 , cnt
     46              from t
     47             model
     48             dimension by
     49             (
     50                inst_seq
     51             )
     52             measures
     53             (
     54                branch, currency, client_id, loan_no, inst_mat_date, original_inst_amt, int_amt, 1 cnt
     55             )
     56             rules
     57             (
     58                 cnt[any] = case
     59                                   when original_inst_amt[cv()-1] > 0 then
     60                                      cnt[cv()-1] + 1
     61                                   else
     62                                      nvl(cnt[cv()-1], cnt[cv()])
     63                               end
     64             )
     65         )
     66  /
    
        BRANCH   CURRENCY  CLIENT_ID    LOAN_NO INST_MAT_   INST_SEQ ORIGINAL_INST_AMT    INT_AMT
    ---------- ---------- ---------- ---------- --------- ---------- ----------------- ----------
           110          2        222        100 01-JAN-13          1                 0          0
           110          2        222        100 02-JAN-13          2                 0          0
           110          2        222        100 03-JAN-13          3                 0          0
           110          2        222        100 04-JAN-13          4               500        246
           110          2        222        100 05-JAN-13          5                 0          0
           110          2        222        100 06-JAN-13          6                 0          0
           110          2        222        100 08-JAN-13          8               600        256
           110          2        222        100 07-JAN-13          7                 0          0
           110          2        222        100 09-JAN-13          9                 0          0
           110          2        222        100 11-JAN-01         11                 0          0
           110          2        222        100 10-JAN-01         10                 0          0
           110          2        222        100 12-JAN-01         12               700        274
    
    12 rows selected.
    
    SQL>
    

Maybe you are looking for