Derived Column for "PATH"

I have a table with the first 3 colums below. Is there a way to generate the fourth column? I need to string together the location by date (asc). if the location does not change, then I do not string the data. There should be one path per ID. I have tried using window functions but can't seem to figure it out. I also cannot use P/SQL for this. It needs to be regular SQL. The following is sample data.
ID DATE Location PATH
A 01/01/2006 CA CA
A 01/02/2006 CA CA
A 01/10/2006 CA CA
B 01/01/2006 CA CA-TX-CA
B 01/02/2006 TX CA-TX-CA
B 01/10/2006 CA CA-TX-CA
C 01/01/2006 CA CA-NY-CA-TX
C 01/02/2006 CA CA-NY-CA-TX
C 01/10/2006 NY CA-NY-CA-TX
C 01/01/2006 CA CA-NY-CA-TX
C 01/02/2006 CA CA-NY-CA-TX
C 01/10/2006 TX CA-NY-CA-TX
I would greatly appreciate any help on this,
Sam

Try this (not tested)
SELECT id,
       LTRIM(MAX(SYS_CONNECT_BY_PATH(location,'-'))
       KEEP (DENSE_RANK LAST ORDER BY curr),'-') AS path
FROM   (SELECT id,
               location
               ROW_NUMBER() OVER (PARTITION BY id ORDER BY date) AS curr,
               ROW_NUMBER() OVER (PARTITION BY id ORDER BY date) -1 AS prev
        FROM   <your_table>)
GROUP BY id
CONNECT BY prev = PRIOR curr AND id = PRIOR id
START WITH curr = 1;For other string aggregation techniques see
http://www.oracle-base.com/articles/10g/StringAggregationTechniques.php

Similar Messages

  • Derived Column : for Lookup type column with 'Allow Multiple Selection' : True in sharepoint list

    Hello,
    I have one column where field type is Lookup but 'Allow Multiple Selection' is true in SharePoint List.
    So, in this scenario data from the SharePoint list is being exported as below.
    1;#Red;#3;#Blue;#4;#Black;#5;#Green
    Now resultant text exported to SQL Table should be :
    1,3,4,5
    OR
    Red,Blue,Black,Green
    Either way it is fine. How can we get this using Derived Column and Data Conversion?
    I am able to do this for single occurrence using below expression.
    (DT_STR,100,1252)(SUBSTRING([BusinessUnit],FINDSTRING([BusinessUnit],"#",1)+1,LEN([BusinessUnit])-FINDSTRING([BusinessUnit],"#",1)))
    Please suggest.
    Thank you,
    Mittal.

    Your best bet would be to do this in sql using a string parsing udf as below
    http://visakhm.blogspot.com/2010/02/parsing-delimited-string.html
    You can make it into procedure and call it from oledb command task.
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Avoiding derived columns for mapping purposes only

    Hi.  In 2012 has there been any advancement that would alleviate us from adding a derived column simply for the purpose of mapping an existing var or param to an oledb output column? 

    Hi DB042189,
    According to your description, what you would like to do is directly mapping a variable or parameter to an Output column of a Data Flow Task control without adding a new column through the Derived Column transform. If so, this is not supported in SSIS 2012
    currently. I would suggest you submitting a wish at
    https://connect.microsoft.com/sql.
    Connect site is a connection point between you and Microsoft, and ultimately the larger community. Your feedback enables Microsoft to make software and services the best that they can be, and you can learn about and contribute to exciting projects.
    Regards,
    Mike Yin
    TechNet Community Support

  • Adding Rank for a Column in SSIS Derived Column

    H
    I want to add rank to a column in ssis in a derived column actually.
    Can u please tell how to add it and the syntax for adding it in a derived column.

    Thanks,
    Can you please give the script for the same.
    I am unable to write the script for my logic to implement in SSIS.
    I will be very thankful if some one could help me with it.
    Thanks in Advance.
    Sam thats too generic there would be several ways to solve one problem ... 
    can u tell us what is ur source [i mean table view THE DATA which records tuples you suspect is having duplicates ] 
    on what basis u decide duplicate ? and what row qualifies to go into destination ... for eg  say ur source is 
    select id,name, date from source_table  
    duplicacy could mean id and name being repeated multiple times and may be business rule is like pick up rec with latest date vale if thats the case go for source as : 
    select id, name,max(date) from sourcetable 
    group by id,name 
    if all the columns are repeating in your source table may be use DISTINCT ... 
    would be great if u give ur destination, source and business requirement ..
    if you have got primary key violations and any record qualifies then may be simply at destination component set Ignore failure property and ur job is done ...
    may be removing duplicate at source itself ... might solve ur problem 
    check out more on duplicates : http://blog.sqlauthority.com/2009/06/23/sql-server-2005-2008-delete-duplicate-rows/
    i hope u got the idea ... 
    Hope that helps ... Kunal

  • EXPRESSION SYNTAX REQUIRED FOR DERIVED COLUMN

    Hi
    I've had a look around and can't find the correct syntax for an Expression in a Derived Column task.
    Below is the logic in TSQL. Please could someone help me convert it?
    CASE
    WHEN FIELD1
    =
    'A'
    AND FIELD2
    IS
    NULL
    THEN
    'A'
    WHEN FIELD1
    =
    'B'
    AND FIELD2
    IS
    NULL
    THEN
    'B'
    WHEN FIELD1
    =
    'A'
    AND FIELD2
    =
    'C'
    THEN
    'C_A'
    WHEN FIELD1
    =
    'B'
    AND FIELD2
    =
    'C'
    THEN
    'C_B'
    WHEN FIELD1
    =
    'A'
    AND FIELD2
    =
    'D'
    THEN
    'D_A'
    WHEN FIELD1
    =
    'B'
    AND FIELD2
    =
    'D'
    THEN
    'D_B'
    ELSE
    '0'
    END
    Thanks in advance
    Lucy

    Hi Lucy,
    Try like below expression in derived columns.. 
     ((FIELD1 = 'A'
    && FIELD2 IS NULL)
    ? "A" :
      (FIELD1 = 'B'
    && FIELD2 IS NULL)
    ? "Y" :
    (FIELD1 = 'A' && FIELD2 = 'C' )?
    ”C_A” :
    (FIELD1 = 'B' && FIELD2 = 'C' )
    ? “'C_B” :
    (FIELD1 = 'A' && FIELD2 = 'D' )
    ? “'D_A'” :
    (FIELD1 = 'B' AND FIELD2 = 'D' )
    ? “'D_B”
    : "0"))

  • Drill down in Table or Pivot for derived column

    Hi All,
    I have a requirement like Top 5 products should show the product names and remaining should go to *'Others'*. I achieved it by using Rank function and case when.
    ex: case when rank(product) <=5 then product else 'Others' end
    Now the problem is, I am not getting the Drill option for this column. When I use product column without case when or case when on same column like
    case when product = 'xyz' then 'abc' else product end. In this case drill is working.
    Can anybody suggest me to get the drill on the derived columns.
    Thanks in advance

    A similar thread was recently talked about here:
    In OBIEE charts, how do you make drill downs work on custom formulas?
    With a calculated column, you need to make sure the source query and destination query have the EXACT same formula and the same name for the field. If it is not 100% identical, it may not work correctly. (I typically use the NAVIGATE function to get to the second query rather than the Drill function.)
    Now in some cases, if you try to create a second drill down query with more details in it, the original formula doesn't work the way you want it to. The calculated formulas have to make sense in both source query and destination query in order to work properly. If you have a ranking of the Top 5 Products in the source query, the destination query also has to have the same ranking of Top 5 products in order to work. If you add more fields into the destination query (e.g., adding on product attributes, or # of records associated with that product name etc.), then sometimes the ranking / aggregation in the destination doesn't add up the same way. This causes the system to think that the formulas are different and prevents the drill down.
    I managed to get around this by having a 3rd query in between the original summary view and the detailed data view. So the sequence would be (for example):
    - Dashboard based summary query (including the calculated ranked product names formula)
    - drill down into virtually identical query (add on one slight bit of difference here, for example adding on a second Product Name field ... not a calculated version, but the actual name). Create a drill down this time by clicking on the regular Product Name field (don't drill down on the custom formula)
    - final detailed drill-down query
    You can format this intermediary drill down query to explain to users that they need to click a second time.
    It's not ideal, but it should work. Hope this helps.
    Ted

  • Expression for derived column

    Hi,
    In my SSRS package I have a field which may have a null value. I want to create a derived column that does the following:
    If the value is null replace with 0 else return the value
    How do I script this?The fiels is my [Qty Remaining] field. I thought it might have been something like this but I was obviously wrong:
    ISNULL([Qty Remaining])  ? "0" :  [Qty Remaining]
    Cheers
    Paul

    Try this
    ISNULL([number])  ? (DT_I4) "0" : [number]
    "0" is unicode string, you have to convert it to number, in my case integer or choose yourself

  • Can't change the connection string of SSIS package with derived columns?

    We upgraded SQL server 2008 to 2012, copied and converted all SSIS packages from Visual Studio 2008 to 2010.  When I opened a package in VS 2010 and tried to change the connection string, in the local connection managers, if the data source is another
    SSIS package B(.dtsx file) with derived columns, I can't change the connection string of package B. When I opened the file connection manager editor for package B and tried to locate a dtsx file in another location, saved the change, reopened the project.
    Package B still pointed to previous file.  Other packages without derived columns work fine. Any thoughts?

    We are using the package deployment model and refer to other packages in the same project. If
    we changed the path of package B (with derived columns) to "D:\Visual Studio 2010\xxxx", and refer it in package A, in the A's connection manager, the connection string of package B is still its previous location  "D:\Visual
    Studio 2008\xxxx". When we ran the package A in the SQL server agent, the data source is still
     "D:\Visual
    Studio 2008\xxxx", so how can I change it to "D:\Visual
    Studio 2010\xxxx"? Why has the package C (without derived columns) no such problem? thanks.

  • HOW TO: Add /manipulate columns for a GridControl

    HOW TO: Add /manipulate columns for a GridControl when the columns (attributes) are from different entity objects.
    This HOWTO describes the basic steps of using attributes from different entity objects for a GridControl.
    One way you can create a GridControl which contain attributes from different entity objects is to create a view object and base it on the entity objects which contain
    the desired attributes.
    Here are the basic steps:
    1.Create a new view object (or use an existing view object) by selecting File>New from the menu, clicking the Business Components tab and double-clicking
    on the View Object icon.
    2.In the View Object wizard change the name to something meaningful.
    3.Select the entity objects you will base your view object on.
    4.Nivigate to the attribute screen and select the attributes you would like to include in your view object from each entity object. At this point you can also create
    a new attribute by clicking the "New" button. The new attribute can be a concatenation of other attributes, derived from a calculation etc.
    5.In the query panel of the View Object wizard, click "Expert mode" and enter a query statement. You write complex queries such as decoding a set of attribute
    values.
    6.Add your newly to your newly created view object to the application module by double-clicking on the application module in the navigation pane and selecting
    your view object from the list.
    7.Create a new row set.
    8.Bind row set to a query by editing their queryinfo property and selecting your view object and its attributes from the queryInfo pane.
    9.Create a GridControl and bind it to the row set by editing the dataItemName property of the GridControl. Since the GridControl is bound at the row set level
    all of the related attributes are automatically added.
    null

    Michael,
    Are you intending this as a commercial solution or a work around?
    To take an existing equivalent, one would build a view in the database tailored for each grid in an Oracle Forms application. Or a separate query layered over tables for each form/grid in a Delphi or Access application? Even if it is ninety nine percent the same over half a dozen forms/grids?
    And now you've added a whole slew of "slightly different" rowSetInfos to maintain.
    So if you wanted to add a column that needs to appear everywhere... you've just increased the workload multi-fold?
    That would be a management nightmare, wouldn't it? Not to mention yet more performance cost and a slower system?
    Hmmmm..... I'm not sure I like where this is headed... someone needs to do some convincing...
    null

  • Add a new column for WBS description

    Hi all
    how to Add a new column for WBS description and derive the value as per the FS
    anybody can provide document for this

    Hi ,
    In Table <b>PRPS</b>, alread you have short description field <b>POST1 and POSTU</b> for the WBS element, apart from that still if you want to include a feild for your own requirement , then create a structure and with the description field of your requirement and append that structure into PRPS table.
    Hope This Info Helps YOU.
    <i>Reward Points If It Helps YOU.</i>
    Regards,
    Raghav

  • Checkbox derived column in report

    I added an HTML checkbox that has the same name for every row and a value of the pk for that row to a report. I also added a submit button.
    The submit button branches back to the same page.
    If I don't check ANY checkbox buttons the submit button just takes me back to the same report. If I even click one checkbox, I get a 404 "Page cannot be found" with the url saying: pls/htmldb/wwv_flow.accept
    why is this procedure doing this? How can I add a derived column containing a checkbox to a report for selection of report rows for further processing or adding of these rows to a "shopping cart/basket".

    Enough with this ..... link
    http://www.oracle.com/technology/products/database/htmldb/howtos/checkbox.html
    How many times do we have to see it in the forum....Enough.....
    Its so frustrating giving the same link time and time again...And the funny
    part is that most people's questions has nothing to do with that. But
    still some geniuses give the same link....I just feel so sorry for people
    who are struggling to get a answer and some idiots give the same link

  • Create a derived column based on a value within the file name

    I am importing a CSV file which is easy enough, but I have an issue where I need to manufacture a couple of column values based on the filename of the input.  So this same process will import different types of records to the same table in sql server.
     I need to pull out the record code from the file name.  
    For instance, say I can use the same package to input two different CSV files.  One is named Input_M02_Data.csv and one named Input_B15_Data.csv.  I need to create a derrived column and store the record code there (i.e.:  M02 or B15) based
    on which file it came out of.  
    fyi-
    I also need to create a second column for Dept based off of the file name as well.  M02 is dept 45 and B15 is dept 99  which I also need to insert into this table when I import the data from the .csv file.  
    Any help is greatly appreciated!

    Hi Jason,
    According to your description, you want to add two derived columns based on the file name to also insert into table. One stores the value between two “_” within file name, another stores the department based on that column.
    If in this scenario, we can add a variable FileName that stores the filename, then add the two variables as derived columns like below in the Derived Column Transformation:
    Name:
    SUBSTRING(@[User::FileName],FINDSTRING(@[User::FileName],"_",1)+1,FINDSTRING(@[User::FileName],"_",2)-(FINDSTRING(@[User::FileName],"_",1)+1))
    Dept:
    @[User::Name] =="M02"?"dept 45":@[User::Name] =="B15"?"dept 99":"dept 00"
    The following screenshot is for your reference:
    If there are any other questions, please feel free to ask.
    Thanks,
    Katherine Xiong
    If you have any feedback on our support, please click
    here.
    Katherine Xiong
    TechNet Community Support

  • SSIS: Using CASE Statement Within A Derived Column Transformation Expression

    The following is my Data Flow:
    Ole DB Source > Copy Column > Derived Column >Ole DB Command
    My OLE DB Source has the following SQL command task:
    SELECT *
    FROM Repair R
    LEFT OUTER JOIN Vehicle V
    ON R.SN = V.SN
    AND R.Reg = V.Reg
    LEFT OUTER JOIN Product P
    ON R.PID = P.PID
    This yields a column of concern for me named PartNumber, which are represented by the following 2 formats:
    The following are my Copied Columns:
    Input Column = PartNumber
    Output Alias = Copy of PartNumber
    The following are my Derived Column expressions:
    Derived Column Name Derived Column Expression
    Name Replace 'PartNumber' LEFT(PartNumber,FINDSTRING(PartNumber,"-",1) - 1)
    Copy of Name Replace 'Copy of PartNumber' RIGHT([Copy of PartNumber],LEN([Copy of PartNumber]) - FINDSTRING([Copy of PartNumber],"-",1))
    So My PartNumber Column is Replaced with ######### of type
    string and the Copy of PartNumber column is replaced with
    #### of type int
    As I stated earlier PartNumber also is in the format of %-%-% which raises the following question:
    How can I replace PartNumber Column with NULL if in format of
    %-%-% and take the PartNumber and put it in new column named
    SubPart while keeping all the logic within SSIS objects?
    So in essence I want to do something like the following:
    PartNumber = CASE
    WHEN 'PartNumber' LIKE '%-%-%'
    THEN ABC = PartNumber AND PartNumber IS NULL
    END
    I have tried the case statement in a Derived Column expression and is not working. Would I add the
    CASE statement to the SQL command task in my OLE DB Source?
    I hope this question is concise for you.

    If it must be in SSIS, I would put a derived column stage earlier in the process to do my check for me. Then in the second derived column stage do the check against each output column (part, subpart, copy of part) to decide which way it goes
    PS Not sure if it's a 2012 function but SSIS has a function called TOKEN that will allow you to pull your subparts for you rather than the left/right you are doing

  • Can't we use function to derive value for NEXT clause in MV ?

    Hi Friends,
    I have a requirement like below
    I need to derive the schedule (Value for NEXT clause in the create MV command) for a MV to run it
    e.g., Value from a date column : 03-JUL-2012 10:00 AM, VALUE for NEXT clause in CREATE MV statement should be 03-JUL-2012 04:45 AM (It is -5.45 hrs from the above date column value )
    So I wrote a function (GET_DATE) to derive schedule for NEXT clause and tried to call it from NEXT caluse, but it is giving error message as mentioned below
    ORA-04044: procedure, function, package, or type is not allowed here
    CREATE MATERIALIZED VIEW child_mv
    PARALLEL 16
    INITRANS 16
    STORAGE (
    FREELISTS 16
    FREELIST GROUPS 4
    BUILD IMMEDIATE
    REFRESH COMPLETE
    NEXT GET_DATE('PARENT_MV')
    AS
    SELECT * from xxmdme_party_stage where rownum<101;
    Could you please help to give some light on how this can be done ?

    942661 wrote:
    Hi Friends,
    I have a requirement like below
    I need to derive the schedule (Value for NEXT clause in the create MV command) for a MV to run it
    e.g., Value from a date column : 03-JUL-2012 10:00 AM, VALUE for NEXT clause in CREATE MV statement should be 03-JUL-2012 04:45 AM (It is -5.45 hrs from the above date column value )
    So I wrote a function (GET_DATE) to derive schedule for NEXT clause and tried to call it from NEXT caluse, but it is giving error message as mentioned below
    ORA-04044: procedure, function, package, or type is not allowed here
    CREATE MATERIALIZED VIEW child_mv
    PARALLEL 16
    INITRANS 16
    STORAGE (
    FREELISTS 16
    FREELIST GROUPS 4
    BUILD IMMEDIATE
    REFRESH COMPLETE
    NEXT GET_DATE('PARENT_MV')
    AS
    SELECT * from xxmdme_party_stage where rownum<101;
    Could you please help to give some light on how this can be done ?you must (ab)use EXECUTE IMMEDIATE

  • Replace "\\\\''" from a derived column

    Hi All,
    Quick Question : need to replace in a string the value '' (quote quote) by \\'' (antislash antislash quote quote).
    This change could be done from a derived column transformation
    Obviously REPLACE(field_value,"''","\\\\''") doesn't run...
    Thx for your help

    Don't understand the following issue :
    1/ from a NEW project into a derived colum i enter :
    "REPLACE(field1,@[User::varSearch],@[User::varReplacement])" 
    => black font : it s running
    2/ from an existing project I create the both variable : varSearch, varReplacement
    and into a derived colum : "REPLACE(field1,@[User::varSearch],@[User::varReplacement])" 
    => red font : it s running
    I suppose a format (wstr) or lenght field issue... 

Maybe you are looking for

  • Sales Order Stock, using Sales Orders

    Morning! We are receiving Sales Order Stock (stock segment E), thus creating special stock with a number that consists of the Sales Order Number + the Item number of the order. This is to support our Repairs process in CRM. (So we are NOT using NB Pu

  • How to make an app deleted from iTunes library be deleted from all the iOS devices synced with this library?

    Hello! I have 3 iOS devices synced with iTunes apps library (OS X 10.10.2) Can someone tell me how to make not only added but deleted apps be synced also? I mean I want an app deleted in iTunes library be deleted from any iOS devices synced with this

  • N80 crashing when viewing the picture and video fi...

    i have a nokia n 80 with the latest firmware, when viewing through my files in the picture and video gallery, my phone crashes and doesnt respond, even when i hold down the menu key which tells me which application is running, i cant cancel it. anyon

  • Line number in a stored procedure

    Hello All, In a stored procedure, as a part of logging the debugging information, I want to store the current line number in a variable (say line_number) and return it from the stored procedure as a output paramater. I would like to update line_numbe

  • Provide FULLY INCLUSIVE Internet Service

    Fully inclusive would be defined as email which actually works!  I know this would something completely new for Verizon however other providers seem to manage without any issues.  Perhaps one day Verizon will catch up to everyone else.  I personally