Selecting Newest Record

Using Oracle eBusiness Suite.
Users can raise one requisition, and have it convert through to a PO. They can then raise a new requisition, and ask for it to be added to the existing, original PO.
That leaves a scenario where a PO can have 1+ requisitions linked to it.
I am trying to write some SQL to extract the requisition_header_id of the latest requisition that has been linked to a PO.
This sample data shows some sample numbers:
WITH limitdata AS
     (SELECT 1066230 req_header_id, 60002872 req_num, 2042944 line_location_id, 1095545 po_header_id FROM DUAL UNION ALL
      SELECT 1082412, 60004988, 2086260, 1095545 FROM DUAL)
SELECT *
  FROM limitdata;I tried to do it via:
SELECT DISTINCT prla.requisition_header_id
              , prla.creation_date
              , prha.segment1
              , plla.line_location_id
           FROM po.po_requisition_lines_all prla
              , po.po_requisition_headers_all prha
              , ap.ap_suppliers pv
              , ap.ap_supplier_sites_all pvsa
              , po.po_line_locations_all plla
              , po.po_lines_all pla
          WHERE prla.vendor_id = pv.vendor_id
            AND prha.requisition_header_id = prla.requisition_header_id
            AND prla.vendor_site_id = pvsa.vendor_site_id(+)
            AND prla.line_location_id = plla.line_location_id
            AND plla.po_line_id = pla.po_line_id
            AND prha.requisition_header_id = (SELECT MAX(requisition_header_id)
                                                FROM po.po_requisition_lines_all prla2
                                               WHERE prla2.line_location_id = plla.line_location_id)
            AND pla.po_header_id = 1095545;But that still return s the same 2 lines as in the sample data.
Apologies for revealing my ineptitude and stupidity by asking this question, but I wondered if anyone might be able to advise please about where I am going wrong?
Any advice much appreciated.
Thanks

You might try the E-business suite - EBS General discussion group for users more familiar with this module.
Meanwhile -
What I do when I'm trying to find which record in an ebs query is causing me to return more than (or less than) the desired rows is to start the query with one table and appropriate "where" clause, then add 1 table at a time until I get the duplicate rows. Then I can investigate why that data is that way. Frequently it comes down to an "active" flag or an end date or other criteria that differentiates the rows. In just a short look at your code, I would check out the vendor sites table, as there are frequently more rows than you anticipate in sites tables.
And - I know there are frequently a boat load of tables that look "not needed" but really are - but are you sure you need all those tables to accomplish your goal? Can you eliminate some of the supplier tables, that could be giving you unexpected data.
Good luck!

Similar Messages

  • Insert Multiple Records and newest record id

    The problem I have is I am using a somewhat normalized
    database and I am trying to enter multiple records from a form into
    a table called catfit. It also needs to add information to another
    table called prodmat and pull the id of the record I just added to
    the prodmat table and insert it into the catfit table in one shot.
    Promat - Holds all of the products
    columns in this table
    prodid
    mold
    desc
    features
    pic
    Catfit - Table that links Prodmat and Modcats
    columns in this table
    prodid
    catid
    modlid
    Now the form I have
    <form method="post" action="action.cfm">
    <select name="modlid">
    <option value ="#modlid#"
    selected="selected">#modlid#</option>
    <option value="1">Sewing Machines</option>
    <option value="9">Vacuums</option>
    <option value="12">Air Purifiers</option>
    </select>
    <select name="catid">
    <option value ="#catid#"
    selected="selected">#catid#</option>
    <option value="None">None</option>
    <option value="1">Sewing
    Machines-Embroidery</option>
    <option value="2">Sewing
    Machines-Computerized</option>
    <option value="3">Sewing
    Machines-Professional</option>
    <option value="4">Sewing
    Machines-Quilting</option>
    <option value="5">Sewing
    Machines-Electronic</option>
    <option value="6">Sewing Machines-Value
    Machines</option>
    <option value="7">Sewing
    Machines-Sergers</option>
    <option value="8">Sewing
    Machines-Specialty</option>
    <option value="9">Air Purifier</option>
    <option value="10">Vacuums-Upright</option>
    <option value="11">Vacuums-Canister</option>
    <option value="12">Vacuums-Central</option>
    </select>
    <select name="catid">
    <option value ="#catid#"
    selected="selected">#catid#</option>
    <option value="None">None</option>
    <option value="1">Sewing
    Machines-Embroidery</option>
    <option value="2">Sewing
    Machines-Computerized</option>
    <option value="3">Sewing
    Machines-Professional</option>
    <option value="4">Sewing
    Machines-Quilting</option>
    <option value="5">Sewing
    Machines-Electronic</option>
    <option value="6">Sewing Machines-Value
    Machines</option>
    <option value="7">Sewing
    Machines-Sergers</option>
    <option value="8">Sewing
    Machines-Specialty</option>
    <option value="9">Air Purifier</option>
    <option value="10">Vacuums-Upright</option>
    <option value="11">Vacuums-Canister</option>
    <option value="12">Vacuums-Central</option>
    </select>
    <select name="catid">
    <option value ="#catid#"
    selected="selected">#catid#</option>
    <option value="None">None</option>
    <option value="1">Sewing
    Machines-Embroidery</option>
    <option value="2">Sewing
    Machines-Computerized</option>
    <option value="3">Sewing
    Machines-Professional</option>
    <option value="4">Sewing
    Machines-Quilting</option>
    <option value="5">Sewing
    Machines-Electronic</option>
    <option value="6">Sewing Machines-Value
    Machines</option>
    <option value="7">Sewing
    Machines-Sergers</option>
    <option value="8">Sewing
    Machines-Specialty</option>
    <option value="9">Air Purifier</option>
    <option value="10">Vacuums-Upright</option>
    <option value="11">Vacuums-Canister</option>
    <option value="12">Vacuums-Central</option>
    </select>
    <input type="text" name="modl" value="#modl#"
    style="form">
    <input type="text" name="pic" value="#pic#"
    style="form">
    <textarea name="desc" rows="25" cols="60" wrap="virtual"
    value="#desc#">#desc#</textarea>
    <textarea name="features" rows="25" cols="60"
    wrap="virtual" value="#features#">#features#</textarea>
    <input type="submit" value="Submit" style="form"
    name="submit">
    </form>
    I have worked with the action.cfm page to no avail what so
    ever so I won't even post it. Now the prodmat table is the table
    where I need to get the prodid (Autonumber column) for the record
    that was just inserted so I can insert that number into the catfit
    table under the prodid column (number column). So this what I
    hoping to get in the end.
    When someone submits this form it will add the data to the
    prodmat table and grab the prodid generated from the new record.
    Then instert a new record for each of the catid select boxes into
    the catfit table. so something like this.
    If they select all three categories upon the submit it would
    add to the catfit table for each record:
    molid = 1
    catid = 2
    prodid = 16 (for instance this would be the newest record
    added to the prodmat table)
    molid = 1
    catid = 6
    prodid = 16
    molid = 1
    catid = 8
    prodid = 16
    Please help I am loosing my hair over this!

    Azadi Saryev wrote:
    > instead of
    > AND CID=#form.CDI#
    > you have to use something like
    > AND CID IN (<cfqueryparam cfsqltype="cf_sql_varchar"
    value="#form.CDI#"
    > list="yes">)
    > since #form.CDI# contains a list of values, not a single
    value
    No. Don't do that. It would produce the same results you were
    getting before ie. the values for all three records would be the
    same.
    Number the CDI fields just like you're doing with form.catID.
    So each set of values is grouped by number
    form.catId1, form.CDI1
    form.catId2, form.CDI2
    form.catId3, form.CDI3
    Then extract the values inside your loop and use them in your
    UPDATE
    <cfloop index="LoopCount" from=1
    to=#Val(form.locCount)#>
    <cfset variables.locID= form["locID"& LoopCount] >
    <cfset variables.catid = form["catid" &
    LoopCount]>
    <cfset variables.CDI = form["CDI" & LoopCount]>
    </cfloop>
    Though you may not actually need an UPDATE here. Another
    option might be to do a DELETE of all existing records for a
    product, followed by an INSERT.

  • How can i post the fields in the screen by selecting a record

    Hi,
      I have a problem in dialog programming.
      I need to populate the fields in the screen by selecting a single record.
      For example,
        Screen consists of 'CARRID, CONNID,FLDATE... fields.
        By pressing F4 in CARRID field it will display the contents from database table and display the records. If i select the record LH 0400 ... record then automatically the connid field should fill with the contents of the record i.e., 0400 and similarly the remaining fields.
       How can i do this in dialog programming?
       I tried with F4IF_INT_table_.. function module. There is a table parameter DYNmapping. But dont know how to use it? Can any body explain me how to use it?
       Thanks in advance..
       Suvan

    Hi Vinod,
      Thanks for your reply. I solved my problem. It is working with the table parameter 'DYNPFLD_MAPPING' in the function module 'F4IF_INT_TABLE_VALUE_REQUEST'.
      With your logic we can't decide which record is selected. Because there can be multiple records for a single CARRID.
      My question is how to post the entire record into the screen fields at a time? It is possible with the parameter I specified inthe above said function module.
      With dictionary reference it will fetch the entire entries from the Check table.
      Thanks again for your co-operation.
      Suvan.<b></b>

  • How to add a checkbox to dynamic itab  so that i can select some records

    How to add a checkbox to dynamic itab  so that i can select some records in the alv and can display them in another alv using a button
    I have requirement where i have to display the dynamic itab records in an alv ....Some records from this alv output has to be selected through checkbox  provided in the first column .( I will get to know the structure of the itab only at runtime ,so iam using dynamic itab)

    Hi,
       I tried and finally i got it , Just try for it.
    type-pools : slis.
    PARAMETERS : p_tab type dd02l-tabname.
    data : ref_tabletype  type REF TO cl_abap_tabledescr,
           ref_rowtype TYPE REF TO cl_abap_structdescr.
    field-symbols  : <lt_table>  type   standard TABLE ,
           <fwa> type any,
           <field> type abap_compdescr.
    data : lt_fcat type lvc_t_fcat,
           ls_fcat type lvc_s_fcat,
           lt_fldcat type SLIS_T_FIELDCAT_ALV,
           ls_fldcat like line of lt_fldcat.
    data : ref_data type REF TO data,
            ref_wa type ref to  data.
    ref_rowtype ?= cl_abap_typedescr=>DESCRIBE_BY_name( p_name = p_tab ).
    TRY.
    CALL METHOD cl_abap_tabledescr=>create
      EXPORTING
        p_line_type  = ref_rowtype
      receiving
        p_result     = ref_tabletype.
    CATCH cx_sy_table_creation .
    write : / 'Object Not Found'.
    ENDTRY.
    *creating object.
    create data ref_data type handle ref_tabletype.
    create data ref_wa type handle ref_rowtype.
    *value assignment.
    ASSIGN ref_data->* to <lt_table>.
    assign ref_wa->* to <fwa>.
    loop at ref_rowtype->components ASSIGNING <field>.
      ls_fcat-fieldname = <field>-name.
      ls_fcat-ref_table = p_tab.
      append ls_fcat to lt_fcat.
    if lt_fldcat[] is  INITIAL.
        ls_fldcat-fieldname = 'CHECKBOX'.
        ls_fldcat-checkbox = 'X'.
        ls_fldcat-edit = 'X'.
        ls_fldcat-seltext_m = 'Checkbox'.
        append ls_fldcat to lt_fldcat.
      endif.
      clear ls_fldcat.
      ls_fldcat-fieldname = <field>-name.
      ls_fldcat-ref_tabname = p_tab.
      append ls_fldcat to lt_fldcat.
    endloop.
    loop at lt_fldcat into ls_fldcat.
      if sy-tabix = 1.
        ls_fldcat-checkbox = 'X'.
        ls_fldcat-edit = 'X'.
    modify lt_fldcat FROM ls_fldcat
        TRANSPORTING checkbox edit.
    endif.
    endloop.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
      EXPORTING
        it_fieldcatalog           = lt_fcat[]
      IMPORTING
        ep_table                  = ref_data.
    assign ref_data->* to <lt_table>.
    select * FROM (p_tab) into table <lt_table>.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
       IT_FIELDCAT                       = lt_fldcat[]
      TABLES
        t_outtab                          = <lt_table>.
    Thanks & Regards,
    Raghunadh .K

  • List View selecting wrong record

    Hi all,
    I have placed a List view on my dashboard. i am using direct connection with BI and am populating the list view with the data retrieved from the connection. the problem is that when i launch the dashboard and select a record from the list view, it selects the record above the one on which i click. I want the list view the select the record which i click on. How do i rectify this.
    regards,
    hamza

    Hi Hamza
    Check all of your data insertion type and associated spreadsheet bindings.
    Regards
    Charles

  • How to select multiple records from a TREE in the table

    HI,
    I have a tree structure which is in the table.When I open the node of the tree,all the subnodes are coming as one-one records in the table.I want to slect multiple record from this table.I applied onLeadSelect for this table,I can select only 1 record from the table.
    Can any one plz suggest me how to select multiple records from the table so that I can get all the data of those selected record.
    Regards
    -Sandip

    Rashmi/Kukku,
    First of all, Thanks for your help!
    Is there any other way in which we can access tables other than using BAPIs or RFCs?
    In my case, there is a table structure which has to be updated with values after validating a key. i don't think there is any RFC available now. do i need to create bapi/rfc for that?
    Krishna Murthy

  • "record enable" buttons not showing up in Garage Band 10.0.3 (I have selected "show record enable"- a space in the track header opens up, but the button is not present.  Same with "input moniter".

    "record enable" buttons not showing up in Garage Band 10.0.3 (I have selected "show record enable"- a space in the track header opens up, but the button is not present.  Same with "input monitor".

    Look at all the posts in the forum from users with similar problems, it happened with the last Logic update.

  • How to select multiple records in an ALV by REUSE_ALVGRID_DISPLAY

    Dear all ,
       I am displaying a report by REUSE_ALV_GRID_DISPLAY. I have used "box_fieldname" property to select a record in the alv . but i am not able to select more tha one record at a time . Can anyboby suggest me how will be i able to select more than one record at a time .
    regards
    amar

    https://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=47808545

  • How to select multiple records in ALV with out pressing ctrl

    Hi Experts,
    Is there a way to select multiple records in ALV with out pressing ctrl button on the key board?
    Selection and deselection should allow multiple records.
    any clue is highly appreciated.
    regards,
    Ajay

    The keyboard always plays a role, although with the Shift key you can select blocks of records.
    ○       CTRLclick, CTRLspacebar
    Toggles a selection.
    ○       SHIFTclick, CTRLshift
    Selects the area from the lead selection to the row selected. If no lead selection is set, the selection starts from the first row. In the multiNoLead mode, the selection starts from the row last selected

  • How to display a select query record in a tool tip?

    hi,
    How to display a select query record in a tool tip?
    for example i have a report employee. when i move the mouse pointer over a employee name, the tool tip should display the respective department id, department name...of that employee name.
    select dep_id, dep_name ....from department where employee.....Is it possible?
    thanks

    Dear Skud,
    Yes its possible..select ''||ename||'' from emp
    other wise you can use jQuery tooptip or some other JScript bundles.
    Thanks and Regards
    Maheswara

  • Select one record per person from multiple conditions

    Perhaps been staring at this too long and making changes to try and gather the correct population, but can't seem to figure it out at the moment. Trying to determine logic to select one record per person. If person has more than one record would like to choose the record that matches the sequence priority which is:
    AND CASE WHEN ac.primary_program_ind = 'N'                                       --Existing Students who have a new program (Continuing Law and added Business)
                                   AND ac.academic_period_admitted = ac.academic_period
                                   AND ac.student_population <> 'V'
                                   AND ac.program is not null THEN 'Y'
                                WHEN ac.primary_program_ind = 'Y'                                        --Visitors (Each term considered new)
                                   AND ac.student_population = 'V'
                                   AND ac.academic_period_admitted is not null THEN 'Y'
                                WHEN ac.primary_program_ind = 'Y'                                        --Normal Cases
                                   AND ac.academic_period_admitted is not null THEN 'Y' --= ac.academic_period THEN 'Y'
                       END = 'Y' Meaning that if the person has records that meet more than one of the above cases, it should choose the record matching the First Case of the case statement. If the records do not meet the first case at all then look to see if it meets the second case and if it does choose that record, etc.
    Sample Data:
    SELECT 363 AS PERSON_UID, '1875' AS ID, '201140' AS ACADEMIC_PERIOD, '201040' AS ACADEMIC_PERIOD_ADMITTED, 'UG' AS STUDENT_LEVEL, '' AS EXIST_NEWPROG, 'Y' AS VISITORS, 'Y' AS NORMAL, 'V' AS STUDENT_POPULATION, 'Y' AS PRIMARY_PROGRAM_IND, 'LA' AS PROGRAM FROM DUAL
    UNION SELECT 852, '1962', '201130', '201040', 'GR', '', '', 'Y', 'C', 'Y', 'MS'  FROM DUAL
    UNION SELECT 852, '1962', '201140', '201140', 'GR', 'Y', '', '', 'G', 'N', 'MBA' FROM DUAL
    UNION SELECT 852, '1962', '201140', '201040', 'GR', '', '', 'Y', 'G', 'Y', 'MS' FROM DUAL
    UNION SELECT 659, '1093', '201140', '200840', 'UG', '', '', 'Y', 'T', 'Y', 'BB' FROM DUALSo for the above data on ID '1962', I would like to select the record that has EXIST_NEWPROG = 'Y' and ignore the other rows for that ID. Note:EXIST_NEWPROG, VISITORS, NORMAL I added to sample data, these cols don't actually exist. Put in for easier display purpose to show what case statements are doing. The actual sql statement has many joins and where statements, but hopefully this simplification of the sql will be sufficient to derive a solution.
    WITH MULTIROWS AS
    SELECT 363 AS PERSON_UID, '1875' AS ID, '201140' AS ACADEMIC_PERIOD, '201040' AS ACADEMIC_PERIOD_ADMITTED, 'UG' AS STUDENT_LEVEL, '' AS EXIST_NEWPROG, 'Y' AS VISITORS, 'Y' AS NORMAL, 'V' AS STUDENT_POPULATION, 'Y' AS PRIMARY_PROGRAM_IND, 'LA' AS PROGRAM FROM DUAL
    UNION SELECT 852, '1962', '201130', '201040', 'GR', '', '', 'Y', 'C', 'Y', 'MS'  FROM DUAL
    UNION SELECT 852, '1962', '201140', '201140', 'GR', 'Y', '', '', 'G', 'N', 'MBA' FROM DUAL
    UNION SELECT 852, '1962', '201140', '201040', 'GR', '', '', 'Y', 'G', 'Y', 'MS' FROM DUAL
    UNION SELECT 659, '1093', '201140', '200840', 'UG', '', '', 'Y', 'T', 'Y', 'BB' FROM DUAL
    select *
    from multirows ac
    where  CASE WHEN ac.primary_program_ind = 'N'                                       --Existing Students who have a new program (Continuing Law and added Business)
                                   AND ac.academic_period_admitted = ac.academic_period
                                   AND ac.student_population <> 'V'
                                   AND ac.program is not null THEN 'Y'
                                WHEN ac.primary_program_ind = 'Y'                                        --Visitors (Each term considered new)
                                   AND ac.student_population = 'V'
                                   AND ac.academic_period_admitted is not null THEN 'Y'
                                WHEN ac.primary_program_ind = 'Y'                                        --Normal Cases
                                   AND ac.academic_period_admitted is not null THEN 'Y' --= ac.academic_period THEN 'Y'
                       END = 'Y'

    Hi,
    user1069723 wrote:
    Thanks Frank. I've been incorporating your solution and going over the data, (which is why it has taken so long to respond) and am getting closer, however the approach you provided excludes people who have a "RNum" of 2 or 3, but do not have a 1 at all. So people that only have a 2 and 3 OR only have a 2 or only have a 3 would not be captured, but if there is only one record, they would be missed.
    Here is another set of records of one person.
    SELECT 921 AS PERSON_UID, '8284' AS ID, '201130' AS ACADEMIC_PERIOD, '201030' AS ACADEMIC_PERIOD_ADMITTED, 'UG' AS STUDENT_LEVEL, '' AS EXIST_NEWPROG, 'Y' AS VISITORS, 'Y' AS NORMAL, 'V' AS STUDENT_POPULATION, 'Y' AS PRIMARY_PROGRAM_IND, 'LA' AS PROGRAM FROM DUAL
    UNION SELECT 921, '8284', '201140', '201040', 'UG', '', '', 'Y', 'F', 'Y', 'BB'  FROM DUAL
    Sorry, I can't reproduce the problem.
    If I add the two new rows of sample data that you posted today to the data you posted yesterday, then the query I posted yesterday produces:
    PERSON_UID ID   ACADEM ACADEM ST E V N S P PRO      R_NUM
           659 1093 201140 200840 UG     Y T Y BB           1
           363 1875 201140 201040 UG   Y Y V Y LA           1
           852 1962 201140 201140 GR Y     G N MBA          1
           921 8284 201130 201030 UG   Y Y V Y LA           1Io you get the correct output for the original ids?
    If I DELETE all the rows where id != 8284 I still get the same results for id=8284.
    'm using Oracle 11.1.0.6.0. What version are you running?
    Post your exact code, even iof you think you copied it from thsi site without any changes. Perhaps there was some subtle eidting mistake.
    I would like to select the record for Academic_Period = 201140 for this person. Is the problem that you're getting the wrong row for id=8284, or that you're not getting any output for id=8284?
    Why would you want to get the row with academic_period=201140? (Let's call this row A.) Why don't you want the other row for that person, the one with academic_period=201130? (Let's call this row B.) On both of those rows, primary_program_ind='Y' and academic_period_admitted is not NULL. The only significant difference between those two rows is that student_population='F' on row A, and it's 'V' on row B. Doesn't that mean that row B causes the CASE expression to return 3 ("Normal Case"), while row B makes it return 2 ("Visitor")? Doesn't that mean row B should be preferred to row A?
    Then again, perhaps this is just what you mean by saying that "term" is the main factor in deciding which row to select, and that the CASE expreesion ("New Program" before "Visitors", followed by "Normal Cases") is just a tie-breaker.
    Based on my understanding of the code you provided, this person is being excluded altogether because they do not have a record that evaluates to rnum = 1.ROW_NUMBER never returns a value of 2 or 3 unless it has already returned a value of 1. (At least that's how it's supposed to work, and I've never heard of any bugs concerning it.)
    This record is also complicated because it has two terms, Does "term" mean "academic_period" here?
    in all cases, we would want to select the highest term and then if there is still more than one qualifying record, base the "tie breaker" on the cases. Does this make sense or is my explanation still unclear?It's unclear.
    Maybe you need to add one more line at the beginning of the analytic ORDER BY clause (the 6th line below):
    WITH     got_r_num     AS
         SELECT     m.*
         ,     ROW_NUMBER () OVER ( PARTITION BY  id
                             ORDER BY       
                                             academic_period     DESC,          -- Added
                                             CASE
                                       WHEN  primary_program_ind      = 'N'     --Existing Students who have a new program (Continuing Law and added Business)
                                                       AND   academic_period_admitted      = academic_period
                                                       AND   student_population       != 'V'
                                                       AND   program                is not null
                                            THEN 1
                                                    WHEN  primary_program_ind      = 'Y'     --Visitors (Each term considered new)
                                                       AND   student_population      = 'V'
                                                       AND   academic_period_admitted is not null
                                            THEN 2
                                                    WHEN  primary_program_ind      = 'Y'     --Normal Cases
                                                   AND   academic_period_admitted is not null
                                            THEN 3
                                             END
                           )     AS r_num
         FROM     multirows     m
    --     WHERE     ...     -- If you need any filtering, this is where it goes
    SELECT     *     -- or list all columns except r_num
    FROM     got_r_num
    WHERE     r_num     = 1
    ;

  • Select Expert - Record

    I'm trying to limit the values presented in the Select Expert - Record tab based upon it's relationship to a selected value from another field.
    We have several hospitals.  Each hospital has several floors or unit/wards usually identified as 6 East, 2 West, 4 North, etc.  Not all of the hospitals have the same named unit/wards.
    I select use select expert - table_name.Facility_Name = "Hospital A" when I select table_name.Unit_Name I only want those units/wards from the "Hospital_A" to be displayed in the list and not all of the units/wards that are listed in the table.  This way I do not have to wade through all of the unit/wards that a facility does not have.  The report is for unit/ward.
    Thanks
    Michael

    Hi Michael,
    If you are using Crystal XI or newer version then try creating a cascading prompt to get filtered with parent level field value.
    For more information check the sample report prompting.rpt that shows the cascading prompt of Country>Region>city
    Regards,
    Raghavendra

  • Select Expert Record. Last 6 months and week start date on Monday

    Hello,
    i am trying to use the select expert record to grab the last 6 months worth of data. I require the week start day to be a monday and end on a sunday.
    Can someone please provide some advice the best way to do this
    kind regards
    david

    Hello Abhilash,
    Once again thanks for your reply.
    Yes this is correct, when it goes back 6 months i need it to skip the days prior and begin on a monday as we are reporting on a mon-sunday basis.
    I have tried your formula Date field >= dateadd('m',-6,currentdate) and it seems to grab 6 months of data, but the group weeks are not grouping from Monday to Sunday...
    kind regards
    david
    Edited by: davitali on Dec 2, 2011 9:35 AM

  • Select Random Records with Group By?

    Hi,
    I currently select random records by using this type of SQL:
    (SELECT *
    FROM ( SELECT *
    FROM ( SELECT *
    FROM TABLEA
    ORDER BY dbms_random.value
    WHERE ROWNUM <= 100
    Based on the following data, I now want to still pick out random records but I only want 1 record from the same ID and START_DATE but where the FLAG could be Y or N.
    So with grouping by ID and START_DATE, I need to still be able to choose the record if it has anything from 1 entry or 10 entries per ID and START_DATE.
    Could this be performed with a GROUP BY?
    ID START_DATE FLAG
    1 12/12/2005 Y
    1 12/12/2005 N
    1 12/12/2005 N
    1 30/12/2005 Y
    1 30/12/2005 N
    1 30/12/2005 N
    2 10/10/2005 Y
    2 07/07/2005 Y
    Thanks for any help.
    Daniel

    Try this [not tested]:
    SELECT *
         FROM
              (SELECT *
                   FROM
                   ( SELECT
                              ID
                             ,START_DATE
                             ,FLAG
                             ,ROW_NUMBER() OVER
                                  (PARTITION BY ID,START_DATE ORDER BY dbms_random.value) RN
                        FROM TABLEA
                   ORDER BY dbms_random.value
         WHERE RN = 1
              AND ROWNUM <= 100
         ;

  • Can any one tell me how to select latest record

    Hi,
    Can any one tell me how to select latest record. Below is the requirement
    select * from a where a_Date=v_date.
    out of thousand records with matched condition i need to select latest record
    Thanks in advance

    user12852882 wrote:
    Can any one tell me how to select latest record. Below is the requirement
    select * from a where a_Date=v_date.
    out of thousand records with matched condition i need to select latest recordHow do you determine the "latest" row? From your description it sounds like the following SQL will define the latest:
    select max(a_date) from aThis will return the last/latest date used from the table.
    Secondly, you now want to select the last row - or rows. As a_date may not be a primary key (you did not state it was and usually a date column make poor choice as unique identifier), there could be more than one row with that "+latest date+".
    So to find the latest row(s):
    select * from a where a_date = (select max(a_date) from a)Or you could do the following:
    declare
      latestDate date;
    begin
      // find the latest date and store it for use and re-use
      select max(a_date) into latestDate from a;
      // now process the last row(s) - and consider rewriting this
      // as a bulk processing loop
      for c in (select * from a where a_date = latestDate)
      loop
        .. do something with the row
      end loop;
      // now use latestDate variable for some other
      // required processing
    .. code goes here ...
    end;

Maybe you are looking for

  • Help: analyze microsoft word docs

    I'm trying to write a program to run linguistic analysis on Microsoft Word documents. I understand how to do i/o with plain text files. But for a Word document, how do I deal with those extra formatting? Can any of you Java gurus out there give me so

  • HCM Processes & Forms without Employee Selection

    We would like to develop a Job Requisition Process using HCMPF.  A Job Requisition does not require an employee selection. The Start Process in the portal begins with the selection of an employee.  I know that the ability to skip employee selection i

  • Interactive pdf reports

    Hello All, We have a requirement wherein the customers should be able to keyin the data in the pdf reports that are generated through oracle and save the same. This way the customers can reduce lot of paper work. Our reports are developed through Rep

  • Adobe Illustrator CC fecha sozinho, o que eu faço?

    Obs.: Configurações do PC não é!

  • How can I get the search shortcut (cmd-k / ctrl-k) to open a new window?

    Currently, if my search bar is not visible, cmd-k (or ctrl-k) opens my preferred search engine in the current tab. Is it possible to rather open a new tab using this keyboard shortcut? This behavior is not changed by changing the value of the browser