Calculating difference of a single date field

Greetings
I have a table as below
Test_case_id Execution_Date Execution_id
100 7/1/2009 1
100 7/5/2009 2
100 7/20/2009 3
I want to write a query that gives me the no of days between two executions.
I want the result to be like
4 days (between the first two executions)
15 days (between the next two executions)
Please help

You can try:
with t as(
select 100 as Test_case_id, to_date('7/1/2009', 'mm-dd-yyyy') Execution_Date, 1 Execution_id from dual union all
select 100 as Test_case_id, to_date('7/5/2009', 'mm-dd-yyyy') Execution_Date, 2 Execution_id from dual union all
select 100 as Test_case_id, to_date('7/20/2009', 'mm-dd-yyyy') Execution_Date, 3 Execution_id from dual)
select to_char((select min(execution_date)
             from t  t2
          where t2.execution_date > t1.Execution_date) - t1.Execution_Date)||' days' Diff
from t t1
where t1.execution_date < (select max(execution_date)
              from t  t2 )
DIFF
4 days
15 daysMiguel

Similar Messages

  • Finding difference between Max date and Min date from single date field

    Dear Experts,
    Here I am with a scenario where i didnt find any solution in SDN and in most threads it is unanswered.
    I have 1 KF which is a date field. With reference to Serial no, I want to find out the Max and Min date from the same KF. I created 2 CKF where the same KF is used in both CKF to find the Min and Max dates,
    Ex:
    Serial No | Material | Actual Del date | Max | Min | Difference
    0123 | 300012 | 01.01.2009 | 31.01.2009 | 01.01.2009 | 30
    0123 | 300013 | 07.01.2009 | 31.01.2009 | 01.01.2009 | 30
    0123 | 300018 | 15.01.2009 | 31.01.2009 | 01.01.2009 | 30
    0123 | 300014 | 30.01.2009 | 31.01.2009 | 01.01.2009 | 30
    0124 | 300019 | 02.01.2009 | 10.01.2009 | 02.01.2009 | 8
    0124 | 300012 | 06.01.2009 | 10.01.2009 | 02.01.2009 | 8
    0124 | 300017 | 10.01.2009 | 10.01.2009 | 02.01.2009 | 8
    This is the way how I want the output where now I am able to get the values right till Max and Min and not the difference. I even created the 3rd CKF the find the difference but it is not working.
    How can I find the difference between the Max and Min dates?
    Regards,
    Chan

    Hi
    You have FM --DAYS_BETWEEN_TWO_DATES you can use this while Customer Exit.
    Try to Have 2 RKF for Min Data and Max Date and create a formula/CKF on the same ..
    Hope it helps

  • Issue loading ODS having single Data field when it is set to "No Updpate"

    Hi Gurus,
    I have a standard ODS object with 6 Keyfields & 1 Datafield.
    I am updating it from an Infosouce with help of Update Rules.
    In the Update rules:
    The 6 Keyfields are mapped from the Infosource fields which has relevant data.
    The one Data field needs to be set to "No Update" because there is no relevant field from the Infosource.
    Issue is surfacing with this Data field being set to "No Update"
    when I run the Infopackage even though there are relevant fields in Infosource for the 6 Keyfields none of them are getting updated.
    But when I set the Data field to "Overwrite" and for Update method give some constant or write some Routine and give the Result as 0, the rest 6 Keyfields are also getting updated from the Info source.
    My question is....
    If ODS is having only one Data field, is it mandatory that I have to update it with some value ?
    Can't I set it to "No Update" and load just the Key fields ?
    Thanks in advance,
    Venkat

    Thanks for the inputs.
    Even I had to agree if there is only one Data field in the ODS I have to set to some kind of Update...
    But.....I couldn't find it in writing (in  document) no where from the Web.
    Could anyone point out a document which confirms/explains this ?
    Thanks,

  • Lowest value from 2 date fields combined

    Morning!
    Need a way to combine two separate date fields to determine the lowest combined value. The idea being finding an empno's overall seniority by looking at seniority date and birthdate, birthdate settles the tie in the event two empno's have the same seniority date.
    Can't find a way to do this using two date fields, only a single date field.
    I also need a way to continue finding the next empno in seniority after that, and so on. Need to increment some value or get the nextval somehow to find the next highest in seniority until the entire table has been reviewed.
    Thanks folks.

    Hey Thanks!!
    Table= Requests
    Fields: Empno, LastNme, FirstNme, Seniority_DT, Birth_DT,ReqDate,ReqTime,ChoiceNum
    Field values: vchar, vchar, vchar, date,date,date,date-time,vchar
    Examples in above order: 36525,smith,bob,08-jun-80,23-sep-60,15-mar-10,14:00,1
    The idea is that we assign (1) single day per month per employee of overtime based on seniority, and in case of a tie the birthdate settles seniority. Employees make more than one request per month so their empno appears in the table multiple times. Also a single empno can ask for one of two start times per requested day. At most, a single employee can make requests for any one of (12) days per month, on days Sun-Thu they can ask for one of (2) start times and on Fri-Sat they can ask for one of 3 start times. The "choice" field lets them indicate start time in order of preference.
    On each day on each start time, (2) different people work together, so for days 1-5 there are (2) shifts of (2) people each, total of (4) people assigned per day 1-5 and (6) people assigned on days 6-7.
    The needed output is that for Sunday-Thursday (2) people start at 14:00 and another (2) start at 18:00.
    On Friday-Saturday (2) people start at 14:00, (2) people start at 18:00 and (2) people start at 20:00.
    The idea for the report would be:
    Saturday, 13 March 2010
    1400 Bob Smith, Seniority Date
    1400 Ted Jones, Seniority Date
    1800 Tom Williams, Seniority Date
    1800 Karen Hu, Seniority Date
    2000 Mike Smith, Seniority Date
    2000 Jim Thomas, Seniority Date
    Sunday, 14 March 2010
    1400 Ed Davis, Seniority Date
    1400 Ron Thomas, Seniority Date
    1800 Tiger Woods, Seniority Date
    1800 Joe Davis, Seniority Date
    Each person may only work one day per month. In the event that there is a hole where no one put a request in, we need to go back over the remaining requests to fill them in. The original idea was to do this by:
    All choice #1 first, then start over looking at choice #2 and so on until all the days in the upcoming month are full.
    That's about the best I can explain it. The only way I can see is to do it by seniority and choice# then go around again if there's a hole. I just can't figure out how to look at both the seniority date and birthdate to ensure seniority nor can I figure the logic necessary to find the person, check if the spot is available and assign him or if not go to his next preference for that day and check if it's available and then continue to the next guy.
    It may have been simpler to explain the need in detail and ask that the structure and code be done from scratch but that's asking way too much so I thought I'd ask how to solve this problem and keep working on it from there.
    Thanks in advance again!
    ps... Haven't started the coding yet.... just need the code to accomplish finding seniority based on two date fields combined, then I'll start coding the entire thing.
    Edited by: user9320509 on Mar 10, 2010 5:33 AM

  • Date field difference calculation

    Hi all,
    I am new to Adobe and Java scripting so apologies if this has already been answered elsewhere - I have not been able to find it if it has.
    I want to calculate the difference between two dates fields in hours and mins on a form.
    I have two fields, both Date format (dd/mm/yyy HH:MM), a Start and End date and I want the difference between them in the Time format HH:MM.
    Can anyone help me with the script for this? What I have so far is:
    var strStart = this.getField("StartTime").value;
    var strEnd = this.getField("EndTime").value;
    if(strStart.length || strEnd.length)
    var dateStart = util.scand("dd/mm/yyyy HH:MM",strStart);
    var dateEnd = util.scand("dd/mm/yyyy HH:MM",strEnd);
    var diff = dateEnd.getTime() - dateStart.getTime();
    // One Day = (24 hours) x (60 minutes/hour) x
    // (60 seconds/minute) x (1000 milliseconds/second)
    var oneMin = 60 * 60 * 1000;
    var mins = Math.floor(diff/oneMin);
    event.value = util.printd("HH:MM",mins);
    But this is not working...
    Mary

    The result can be formatted using:
    // format result using "h:MM" format
    event.value = util.printf("%,0 0.0f" + ":" + "%,002.0f", nHours, nMinutes);
    One cannot use the date or time formats since the time values will be limited to the hours and minutes values for 1 day, so any time value that is over 23 hours 59 minutes is not possible.
    A full script solution including document level functions for conversion of date strings to minutes and converting minutes to a time string:
    // reusable document level functions;
    function Time2Num(cFormat, cDate) {
    // convert date value with format to number of minutes form Epoch date;
    var oDate = util.scand(cFormat, cDate);
    var nMins =  null;
    if(oDate ==  null) app.alert("Error converting " + cString + " using " + cForamt);
    else nMins = oDate.getTime() / (1000 * 60);
    return Math.floor(nMins);
    } // end Time2Num format
    function Num2Time(cFormat, nMins) {
    // convert number of muniutes to h:MM or HH:MM format;
    // return formatted string for valid formats;
    // return null for invalid formats;
    var cElapsed = null;
    // test for nMins being a number;
    if(isNaN(nMins)) {
    app.alert("Minutes must be number",0, 0);
    } else {
    var nHours = Math.floor(nMins / 60);
    var nMinutes = Math.floor(nMins % 60);
    switch(cFormat) {
    case "h:MM":
    cElapsed = util.printf("%,0 0.0f" + ":" + "%,002.0f", nHours, nMinutes);
    break;
    case "HH:MM":
    cElapsed = util.printf("%,002.0f" + ":" + "%,002.0f", nHours, nMinutes);
    break;
    default:
    app.alert("Invalid format " + cFormat + "\nMust be \"HH:MM\" or \"h:MM", 0, 0);
    break;
    return cElapsed;
    } // end Num2Time function
    // end document level funcitons;
    // custom calculation script;
    event.value = ''; // clear result;
    var strStart = this.getField("StartTime").value;
    var strEnd = this.getField("EndTime").value;
    if(strStart.length || strEnd.length) {
    var nDateStart = Time2Num("dd/mm/yyyy HH:MM",strStart);
    var nDateEnd = Time2Num("dd/mm/yyyy HH:MM",strEnd);
    var nMins = nDateEnd - nDateStart;
    // format result using "h:MM" format
    event.value = Num2Time("h:MM", nMins);
    // end custom calculation script;

  • Concatenate 2 data fields and put values in single line

    Hello,
    I am pretty new to BI Publisher. I want to concatenate 2 data fields (Product and ProductType). These concatenated values then I want to put them on a single line.
    eg.
    the values should look like
    ProductType1.Product1,ProductType2.Product2, ProductType3.Product3..........
    Thanks.

    The XML is
    - <ServiceAgreement>
    <AccountId>1-abcde</AccountId>
    <AgreementNumber>1-685</AgreementNumber>
    <AgreementStartDate>07/08/2010 13:46:18</AgreementStartDate>
    <AgreementStatus>Awaiting</AgreementStatus>
    <ContactFirstName />
    <ITIStreetAddress />
    <ITIStreetNumber />
    - <ListOfOrderEntry-Orders>
    - <OrderEntry-Orders>
    <ITIMoneyToCollect />
    <OrderDate>07/08/2010 13:46:53</OrderDate>
    <OrderNumber2>1-685579</OrderNumber2>
    <OrderStatus>Pending</OrderStatus>
    <OrderType>Sales Order</OrderType>
    - <ListOfOrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Hollywood 18m</Product>
    <ProductType />
    <PromotionId>123456</PromotionId>
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName>Hollywood 18m</ProdPromName>
    <Product>n TV</Product>
    <ProductType>Root</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>HBO + nFilmHD</Product>
    <ProductType />
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>HBO</Product>
    <ProductType>Opcje dodatkowe</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>nFilmHD</Product>
    <ProductType>Opcje dodatkowe</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>nbox HDTV</Product>
    <ProductType>Dekoder</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Cinemax</Product>
    <ProductType>Opcje dodatkowe</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Filmbox</Product>
    <ProductType>Opcje dodatkowe</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Upust za zakup 3-ego pakietu</Product>
    <ProductType>Upusty</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Pakiet Informacja i Rozrywka</Product>
    <ProductType>Pakiety</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Opłata aktywacyjna za nbox HDTV</Product>
    <ProductType />
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Pakiet Dzieci</Product>
    <ProductType>Pakiety</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    - <OrderEntry-LineItems>
    <OrderType2>Sales Order</OrderType2>
    <ProdPromName />
    <Product>Pakiet Sport i Motoryzacja</Product>
    <ProductType>Pakiety</ProductType>
    <PromotionId />
    <ServiceId />
    </OrderEntry-LineItems>
    </ListOfOrderEntry-LineItems>
    </OrderEntry-Orders>
    </ListOfOrderEntry-Orders>
    </ServiceAgreement>
    </ListOfBipServiceAgreement>
    As per the above XML I want to see
    Pakiet Dzieci.Pakiety , Pakiet Sport i Motoryzac ja.Pakiety.....
    Thanks

  • Store values of different data types into single database field

    Hi Friends,
      I  have to store values of different data types(character, numeric, date, time,  text, etc) into a single database field(Char 80). Then read the same values and display it into ABAP Webdynpro report. 
    Appreciate any ideas, examples, suggestions.
    Thanks
    JB

    Hi,
    Try like this:
    data: txt1 type string,
          var1(1) type c,
          var2(1) type n,
          var3 like sy-datum,
          var4 like sy-uzeit.
    parameters: a type c,
                b type n,
                c like sy-datum,
                d like sy-uzeit.
    concatenate a b c d into txt1.
    write txt1.
    var1 = txt1+0(1).
    var2 = txt1+1(1).
    var3 = txt1+2(8).
    var4 = txt1+8(8).
    write: / var1,
           / var2,
           / var3,
           / var4.
    Regards,
    Bhaskar

  • Group by on date field with time difference of up to 1 minute

    Hi,
    I need to do a group by on a date field and some other fields, but want to include in the same group rows that are identical but may have a difference of up to a minute in the date field.
    group by trunc(datefield,'MI') wouldn't work in cases like 00:00:50 and 00:01:10 (20 sec difference).
    I can do a semi join with where exists and between on the date field, but am hoping for another solution.
    any ideas?
    thanks.
    Edited by: Pyrocks on Sep 14, 2011 2:16 PM

    Hi,
    It sounds like you want something like this:
    WITH     got_new_grp     AS
         SELECT     x.*     -- or whatever columns you need
         ,     CASE
                  WHEN  datefield > MAX (datefield)
                             OVER ( ORDER BY      datefield
                                    ROWS BETWEEN  UNBOUNDED PRECEDING
                                         AND          1         PRECEDING
                                  ) + ( 1 / (24 * 60))
                  THEN  1
              END     AS NEW_GRP
         FROM     table_x     x
    --     WHERE     ...
    ,     got_grp          AS
         SELECT     n.*
         ,     COUNT (new_group) OVER (ORDER BY  datefield)     AS grp
         FROM     got_new_grp     n
    SELECT       MIN (datefield)     AS start_datefield
    ,       MAX (datefield)     AS end_datefield
    ,       COUNT (*)          AS cnt
    FROM       got_grp
    GROUP BY  grp
    ORDER BY  grp
    ;Of course, this makes assumptions for all the things you didn't explain.
    I hope this answers your question.
    If not, post a little sample data (CREATE TABLE and INSERT statements, relevant columns only), and the results you want from that data.
    Explain, using specific examples, how you get those results from that data. Be sure to include an example like the one Kim posted, where rows a and c are more than a minute apart, but both are within a minute of row b, or are connected by a chain of rows each less than 1 minute apart from its neighbor.
    Always say what version of Oracle you're using.

  • How to Calculate AGE by getting difference between two Date Fields

    HI Gems
    I need to calculate AGE from getting difference from two date fields. But when i am trying to wrte fromula as Current date - date1(some date field) then it is showing error.
    How can i get values.
    Thanks
    Manu

    You already asked this question:
    How to calculate AGE from two different date fields

  • WAD - Best way to layout master data fields for a single record

    I am creating an employee profile which will be fed from various InfoProviders in BI. I am going to lay it out so that there is a master data section at the top and then below there will be various histories (salary, job, etc) and everything will be populated by the value of a single variable.
    The question I have is what is the best way to lay out about 20 master data fields in the top section and have it look nice? My guess (and I am not fond of the tedium) is to create a bound text for each of them and bind it to the appropriate characteristic. Then just have the variable setting affect all of them.
    Anyone have any other ideas?

    Hello,
    you can use the interface command:
    storm-control unicast level 10.00
    or
    storm-control unicast bps 10000000
    The first command will limit bandwidth to 10% of what is available, the second will limit bandwidth to 10Mbps, effectively achieving the same thing.
    Check this link to the relevant configuration reference:
    Configuring Storm Control
    http://www.cisco.com/en/US/products/hw/switches/ps5023/products_configuration_guide_chapter09186a00802c10bc.html#wp1063295
    HTH,
    GP

  • Calculating years between 2 date fields

    I am trying to build a form in LiveCycle Designer 7 to report missing persons.  I would like to populate a text field with the number of years between two dates entered in date/time fields; specifically using a missing person's DOB and the date they were last seen to calculate their age when last seen.
    Any assistance would be greatly appreciated.
    Thanks
    Drew

    Greetings,
    I need an age in months and years.
    On my LiveCycyle form I have two date fields 'dob' and 'rdtestdate'.  I am in Australia so we use dd/mm/yyyy as the format.
    The field designated to display the calculated result -- 'rdage' -- is set as a calculated-read only text field.
    What javascript/formcalc code would I use to calculate the age in years and months, please?
    I've been studying and testing the various solutions but don't understand well enough, sorry!  When I paste in a sample and change the field names to match mine, my result remains empty.  Sometimes I get a failed script message as I try to save the form.    I've tried quite a few different scripts to no avail.
    Thanks for any assistance.
    jeannie

  • Analyzer calculation of sum without not available data fields

    Hi,<BR><BR>I use Hyperion Analyzer 6.1.1.00206. I would like to calculate sum of some members.<BR><BR>So I did the following Analysis Tools | Calculations and selected the sum of desired members.<BR><BR>But if data field does not have a value (no data = n/a) then sum of members is also n/a (no data)!<BR><BR>Is there a way to specify the "not available" is treated as 0?<BR><BR>Thanks,<BR>Grofaty<BR>

    Yes, Click on File, then Preferences then DEFAULT FORMATTING TAB and at the bottom it gives you the option of selecting <BR>"REPLACE MISSING DATA WITH" Zero or text. I believe yours is set on text "n/a". Just select "zero" button and click ok. This should solve the problem. Best of luck<BR><BR>Benjamin M Hoffmeyer<BR>Marketing Analyst SSP CIRCLE K

  • [Urgent] Need help calculating difference between two dates

    I'm trying to write a code to display the current day and time, then accept two dates from the user and display the difference between the two dates. To display the current date and time, I've used the SimpleDateFormatter library but I'm having difficulty calculating the difference between two dates. Could someone please help me with this?
    Below is my code so far
    import java.util.Date;
    import java.util.Scanner;
    import java.text.SimpleDateFormat;
    public class DateFormatter {
         public void displayNow()
              Date todaysDate = new Date();
              SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss");
              String formattedDate = formatter.format(todaysDate);
              System.out.println("Today's date and time is: "+formattedDate);
         public void calculateDifference(Date startDate, Date endDate)
              /* This is whre i need help! */
         public static void main(String[] args)
              DateFormatter df = new DateFormatter();
              Scanner sc = new Scanner(System.in);
              df.displayNow();
              System.out.println("Please enter a date: ");
              String date1 = sc.next();
              System.out.println("Please enter another date: ");
              String date2 = sc.next();
    }The methods displayNow() and calculateDifference(Date startDate, Date endDate) are essential and cannot be skipped out.

    tarahmarie101 wrote:
    Dude. I've tried doing assignments under pressure, and it doesn't work. Here's a piece of free advice. Start earlier next time, don't put "urgent" in the title of your post b/c it just pisses people off around here--and is a sure sign of an overdue homework assignment which no one around here likes helping with, and try to ask intelligent questions--don't just say "Help me!"
    Of course, it takes some time to learn what the intelligent questions are. You have my sympathy. Try asking questions about how to do a particular task, instead of asking people to tell you what to do. It starts to get easier after a while.
    actually dude i started on this on monday.. but there were so many other stuff to do along with this.. and i did try referring up the Calendar utility but it was a bit confusing actually.. it was only after that did i come to this forum.. nor am i very good at Java.. anyhoo thanks for your sympathies :P

  • How Many  NUMBER Fields Can SINGLE DATA BASE TABLE CONTAIN

    How Many  NUMBER Fields Can SINGLE DATA BASE TABLE CONTAIN

    Hi
    One Database table contain 249 Fields.
    Rewards Points if useful..
    Regards
    Nikunj Shah
    Edited by: Nikunj Shah on May 13, 2008 1:08 PM

  • Calculating difference between two dates in Variable Exits

    Hi,
          I need to calculate the difference between the two dates in months in Variable exits. I want the result in months so that I need to find out the Average Usage.
            How can I find the difference between them in months.
    Thanks
    Dave.

    Hi Christophe, Senthil
                                       Sorry for late response, I checked this  MONTHS_BETWEEN_TWO_DATES_NEW  in SE37/SE38 and about the date they are going to enter at query run time it should be like 03/03/2006 to 08/03/2006 and I should get in 5 months and or if the date range 03/15/2006 to 08/03/2006 and I should get like 4.5 months. Please could you tell me how to get the values in months or please give me a functional module so that I can use.
    Thanks
    Dave.

Maybe you are looking for