SQL query to find hiredate from emp where empno is max without subquery?

What is the application?

Hello

select max(hiredate) keep (dense_rank last order by empno) from emp;

Concerning
Peter

Tags: Database

Similar Questions

  • SQL Query help find albums from sale

    Hi Experts,

    I have the following data and the need to find the book Top sold in each type.

    Book Type QTY

    20Help the3
    10Kitchen1
    5Navigation2
    30Help the4

    Please let me how can know we get this simple SQL help?

    Thank you

    Bharat

    Hello

    Bharat Hegde wrote:

    Hi all

    I tried to use Dense_rank as below. But it gives me the top selling books. I need high library in each type...

    This looks like a job for 'PARTITION BY type

    For example:

    WITH got_rnk AS

    (

    SELECT b.bid, b.type

    SUM (o.quantity) AS total_quantity

    DENSE_RANK () OVER ( PARTITION BY b.type

    ORDER OF SUM (o.quantity) / / DESC

    ) AS rnk

    B BOOK

    o order1

    WHERE b.bid = o.bid

    GROUP BY b.bid, b.type

    )

    SELECT total_quantity, type submission

    OF got_rnk

    WHERE rnk = 1

    ;

    . Aggregate functions (such as the SUM, above) are calculated before analytical functions, so an analytic function (such as DENSE_RANK above) may depend on an aggregate function; you don't need a separate subquery for that.

  • Error SQL query while trying to fetch the record that has MAX Effective_Date

    Hello

    Could you please suggest me on request below.
    I need to select the record which is having Maximam effectivity_date.
    Below a no not gives a group of expressin

    SELECT safety_stock_quantity
    OF mtl_safety_stocks
    WHERE inventory_item_id = 936
    GROUP BY safety_stock_quantity
    After having effectivity_date = MAX (effectivity_date);



    Thank you
    Pravin

    855902 wrote:
    Hello

    Could you please suggest me on request below.
    I need to select the record which is having Maximam effectivity_date.
    Below a no not gives a group of expressin

    SELECT safety_stock_quantity
    OF mtl_safety_stocks
    WHERE inventory_item_id = 936
    GROUP BY safety_stock_quantity
    After having effectivity_date = MAX (effectivity_date);

    Thank you
    Pravin

    SQL> select * from emp where mep_hiredate = (select max(mep_hiredate) from emp);
    
        EMP_ID EMP_NAME   EMP_SAL                    MEP_HIREDATE
    ---------- ---------- ------------------------------ -------------------
          COMM
    ----------
          1 ED           2                     2010-12-20 09:40:50
          2
    
  • SQL query to find the total number of source based nonsource passangersbetween source and destination station and passenger station on the same chekindate

    Hello

    SQL query to find the total number of source based nonsource passangersbetween source and destination station and passenger station on the same chekindate.

    Please help on this script and let me know if you need more details.

    ---

    You use a SELECT statement.  Let me know if you need more details.

  • SQl query to find out time between the different lines of transactions

    (See both images from an attachment to get the clear picture of the data and understand the question correctly.)

    I have a set of data like this in one of my paintings. (This is a simple representation of the original data.)

    Reference table1.jpg

    Id        | Type               | Value | Start_date | End_date

    ----------------------------------------------------------------------------------------------------------------------

    ZTR0098 | ALLOW | 0 | 1 JUN | 2 JUN |

    ZTR0098 | ADTAX | 0 | 1 JUN | 2 JUN |

    ZTR0098 | MXTAX | 0 | 1 JUN | 9 JUN |

    ZTR0098 | ALLOW | 4. 3 JUN | 15 JUN |

    ZTR0098 | ADTAX | 44.00 | 3 JUN | 17-JUNE |

    ZTR0098 | MXTAX | 2. 10 JUN | 17-JUNE |

    ZTR0098 | ALLOW | 5. 16-JUNE | 20 JUN |

    ZTR0098 | ADTAX | 55,34 | 18 JUN | 22 JUN |

    ZTR0098 | MXTAX | 1. 18 JUN | 25 JUN |

    ZTR0098 | MXTAX | 6. 26 JUN | 31 AUG |

    ZTR0098 | ADTAX | 20.09. 23 JUN | 23 JUL |

    ZTR0098 | ALLOW | 8. 21 JUN | 31 AUG |

    ZTR0098 | ADTAX | 45. 24 JUL | 31 AUG |

    each line has a type and a rasthaus id to it. ID belongs to other parent tables. the value of each type is given, and the validity of each value is followed by a field start_date and end_date.

    All values start from 1 - JUN and expires on 31 - AUG. Now my requirement is to obtain a report that gives three columns for three different types (ALLOW, ADTAX and MXTAX) with combination of unique values in the effective time interval. Let me put the result below.

    Reference table2.jpg

    Id         | ALLOW | ADTAX | MXTAX |  Start_date | End_date

    --------------------------------------------------------------------------------------------------------------------------------------------------

    ZTR0098 | 0 | 0 | 0 | 1 JUN | 2 JUN |

    ZTR0098 | 4. 44.00 | 0 | 3 JUN | 9 JUN |

    ZTR0098 | 4. 44.00 | 2. 10 JUN | 15 JUN |

    ZTR0098 | 5. 44.00 | 2. 16-JUNE | 17-JUNE |

    ZTR0098 | 5. 55,34 | 1. 18 JUN | 20 JUN |

    ZTR0098 | 8. 55,34 | 1. 21 JUN | 22 JUN |

    ZTR0098 | 8. 20.09. 1. 23 JUN | 25 JUN |

    ZTR0098 | 8. 20.09. 6. 26 JUN | 23 JUL |

    ZTR0098 | 8. 45. 6. 23 JUL | 31 AUG |

    As you can see there are no duplicate rows for a combination of (ALLOW, ADTAX and MXTAX) with their respective dates in force. resulting in the above table. the first step is to convert lines to the column which is pretty obvious to do that by grouping on start_date and end_date colum, but the real deal is the time interval during which the combination of the values (ALLOW, ADTAX, and MXTAX) has remained constant.

    I wrote under query using Group by.

    Select

    ID,

    NVL (max (decode (type, "ALLOW", value)), 0) as ALLOW

    NVL (max (decode (type, 'ADTAX', value)), 0) as ADTAX

    NVL (max (decode (type, 'MXTAX', value)), 0) as MXTAX

    Start_date,

    End_date

    from my_table

    Group of start_date, end_date, id

    start_date, end_date

    the results it gives are like this:

    Reference table3.jpg

    Id       | ALLOW | ADTAX | MXTAX |  Start_date | End_date

    ------------------------------------------------------------------------------------------------------------------------------------------------

    ZTR0098 | 0 | 0 | 0 | 1 JUN | 2 JUN |

    ZTR0098 | 0 | 0 | 2. 1 JUN | 9 JUN |

    ZTR0098 | 4. 0 | 0 | 3 JUN | 15 JUN |

    ZTR0098 | 0 | 44.00 | 0 | 3 JUN | 17-JUNE |

    ZTR0098 | 0 | 0 | 2. 10 JUN | 17-JUNE |

    ZTR0098 | 5. 0 | 0 | 16-JUNE | 20 JUN |

    ZTR0098 | 0 | 55,34 | 0 | 18 JUN | 22 JUN |

    .   .

    . .

    like wise

    but I'm not able to determine the time intervals by using the SQL query.

    with

    Table1 as

    (select the id 'ZTR0098', 'ALLOW' type, 0 val, to_date('1-JUN','dd-MON') start_date, end_date Union to_date('2-JUN','dd-MON') double all the)

    Select 'ZTR0098', 'ADTAX', 0, to_date('1-JUN','dd-MON'), to_date('2-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'MXTAX', 0, to_date('1-JUN','dd-MON'), to_date('9-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'ALLOW', 4, to_date('3-JUN','dd-MON'), to_date('15-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'ADTAX', 44.00, to_date('3-JUN','dd-MON'), to_date('17-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'MXTAX', 2, to_date('10-JUN','dd-MON'), to_date('17-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'ALLOW', 5, to_date('16-JUN','dd-MON'), to_date('20-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'ADTAX', 55.34, to_date('18-JUN','dd-MON'), to_date('22-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'MXTAX', 1, to_date('18-JUN','dd-MON'), to_date('25-JUN','dd-MON') of all the double union

    Select 'ZTR0098', 'MXTAX', 6, to_date('26-JUN','dd-MON'), to_date('31-AUG','dd-MON') of all the double union

    Select 'ZTR0098', 'ADTAX', 20.09, to_date('23-JUN','dd-MON'), to_date('23-JUL','dd-MON') of all the double union

    Select 'ZTR0098', 'ALLOW', 8, to_date('21-JUN','dd-MON'), to_date('31-AUG','dd-MON') of all the double union

    Select 'ZTR0098', 'ADTAX', 45, to_date('24-JUL','dd-MON'), to_date('31-AUG','dd-MON') of the double

    ),

    days like

    (select level - 1 dte + to_date('1-JUN','dd-MON')

    of the double

    connect by level<= to_date('31-aug','dd-mon')="" -="" to_date('1-jun','dd-mon')="" +="">

    )

    Select id, allow, adtax, mxtax, min (dte) start_date, max (dte) end_date

    (select ID, dte, max (allow) allow, max (adtax) adtax, max (mxtax) mxtax,

    ROW_NUMBER() over (order by dte) row_number() - courses (partition by order max (allow), max (adtax), max (mxtax) by dte) gr

    go (select id, dte,

    -case when type = 'ALLOW' and dte between start_date and end_date then end val 0 otherwise allow.

    -case when type = "ADTAX" and dte between start_date and end_date then val 0 otherwise end adtax.

    -case when type = "MXTAX" and dte between start_date and end_date then val 0 otherwise end mxtax

    Table 1 t,

    days d

    where d.dte between t.start_date and t.end_date

    )

    Group by id, dte

    )

    Group by id, gr, allow, adtax, mxtax

    order by id, gr

    ID ALLOW ADTAX MXTAX START_DATE END_DATE
    ZTR0098 0 0 0 01/06/2015 02/06/2015
    ZTR0098 4 44 0 03/06/2015 09/06/2015
    ZTR0098 4 44 2 10/06/2015 15/06/2015
    ZTR0098 5 44 2 16/06/2015 17/06/2015
    ZTR0098 5 55,34 1 18/06/2015 20/06/2015
    ZTR0098 8 55,34 1 21/06/2015 22/06/2015
    ZTR0098 8 20.09 1 23/06/2015 25/06/2015
    ZTR0098 8 20.09 6 26/06/2015 23/07/2015
    ZTR0098 8 45 6 24/07/2015 31/08/2015

    Concerning

    Etbin

  • Help me with SQL Query to retrieve data from a view

    Hello Guru,

    I need help in my sql query.
    I use SQL TeraData.
    I want an Oracle result in the following form-

    Open tickets
    Open months failure / Repair Service s/o improvement request Total general
    2009-01-2 4 4 5 15
    2009-02 1 0 2 3 6
    2009-03 4 1 2 2 9
    Grand Total 7 5 8 10 30


    I wrote the query as where - TIME_PERIOD, RQST_TYPE_DM and DEMAND_SUMMARY_FCT are the points of view and I extract the data from the views only.

    Select NVL (CA. TIME_PERIOD. PERIOD_CD, 'Total') THAT year.
    COUNT (CASE WHEN CA. RQST_TYPE_DM. RQSTTYP_DESC Like '% of Break' THEN 1 END) as BreakFix
    COUNT (CASE WHEN CA. RQST_TYPE_DM. RQSTTYP_DESC as 'N/a', 1 END) by n/a
    COUNT (CASE WHEN CA. RQST_TYPE_DM. RQSTTYP_DESC as 'Improvement' THEN 1 END) accessories
    COUNT (CASE WHEN CA. RQST_TYPE_DM. RQSTTYP_DESC Like '% Service' THEN 1 END) as ServiceRequests
    COUNT (CA. RQST_TYPE_DM. RQSTTYP_DESC) AS grand_total
    FROM CA. TIME_PERIOD, CA. RQST_TYPE_DM, CA. DEMAND_SUMMARY_FCT
    WHERE (CA. DEMAND_SUMMARY_FCT. RQSTTYP_ID = CA. RQST_TYPE_DM. RQSTTYP_ID)
    AND (CASE
    WHEN CA. DEMAND_SUMMARY_FCT. MONTH_ID = CA. TIME_PERIOD. PERIOD_ID, 1
    WHEN {fn concat ({fn concat (SUBSTR (CA. TIME_PERIOD. {(PERIOD_CD, 3, 4),'-')}, SUBSTR (CA. TIME_PERIOD. PERIOD_CD, 7, 2))} BETWEEN ' 2009-01' AND ' 2009-03' THEN 1
    WHEN CA. DEMAND_SUMMARY_FCT. RQSTTYP_ID = '1' then 1
    END) = 1
    GROUP BY ROLLUP (CA. TIME_PERIOD. PERIOD_CD)

    After executing the query, I get the following error:
    3076: syntax Error: Data Type 'Time' does not match a defined Type name.
    :( Kindly help me with this and let me know where I'm wrong... Please.

    Messages indicates something wrong with your data... It would seem that the data does not match your format mask.

    Thus, the data or the format mask.

  • SQL query to find approved projects that are open

    Hello

    Can anyone provide a SQL query which will display only the approved projects that are open.

    Thank you

    Titas

    Try this

    Select project NAME of pa_projects_all
    where project_status_code = 'APPROVED '.
    and NVL (CLOSED_DATE, SYSDATE + 1) > SYSDATE

    Thank you
    Pradeep

  • SQL query to find the value of a column as well!

    Hi all

    I have to write a query that needs to retrieve the value of a column in table B if the column value is Null in the Table A. Please find below the sample table.

    Table A:
    *******
    EmpNumber ID
    ------------------------------
    1 12345
    2
    3 14789
    4
    5 74563

    Table B:
    *******
    EmpNumber ID
    -----------------------------
    1 12345
    2 78451
    3 14789
    4 12212
    5 74563

    In the table a second and third rows have value for EmpNumber. The query should look for table B for EmpNumber value. Please advise me to make this request.

    Thank you

    This?

    select      a.id,
         nvl(a.empnumber,b.empnumber) empnumber
    from tabA a, tabB b
    where a.id = b.id;
    
  • SQL query to find out the version of discoverer

    Hello
    As a developer, is there a query sql DB the dorsal (or script) that can be run on DB to find out the version of Oracle Discoverer installed?
    The query will be different if the discoverer is used with the Oracle Applications (R12.1.3) compared to a Scout running on a plain stand alone Oracle database (Oracle applications not)?

    Thank you
    GG.

    Hello gg

    The VER_NAME and the VER_DESCRIPTION are usually never filled and can be ignnored.

    The VER_RELEASE is the NLY version as you rightly summised. This version is 100% compatible with the discoverer 11g and if you already have it you can go from 10g to 11g without changing anything in the EUL

    VER_MIN_CODE_VER is the minimum version of Oracle Discoverer which can be used with this EUL. In this case, 10.1.2.45.20 is 10g Release 2

    VER_EUL_TIMESTAMP is the date and time, this version of the EUL was published by Oracle - again you can ignore it

    Important fields are VER_RELEASE and VER_MIN_CODE_VER

    Hope this helps
    Best wishes
    Michael

  • SQL query problem finding difference in documents

    Hi all
    I use oracle 10g. I need emergency aid to find the difference in documents based on the date:

    I have sales of the table as below:

    seller SALES_COUNT DATE
    JOHN 20 04/01/2012
    DENNY 15 04/01/2012
    JOHN 30 04/02/2012
    DENNY 30 04/02/2012
    JOHN 45 04/03/2012
    DENNY 50 04/03/2012


    SALES_COUNT is up to man including the date of sale. Its similar cumulative number. John has total sales of 01/04/2012 to 03/04/2012 is 50 and same case for Denny. This SALES_COUNT will keep increasing with dates as sales continue to add in the table for each salesperson.
    But I want to have seprate for each seller counties.
    for example: JOHN SALES_COUNT 04/02/2012 is 30-20 = 10
    JOHN SALES_COUNT 03/04/2012 is 45-30 = 15
    DENNY SALES_COUNT, 02/04/2012 is 30-15 = 15
    JOHN SALES_COUNT 03/04/2012 is 50-30 = 20

    Please help me with this scenario and let me know if you need clarification. I would much appreciate your help.

    Thank you.

    This gives you what you want?

    with t as (
         select 'JOHN' salesman, 20 sales_count, to_date('04/01/2012', 'mm/dd/yyyy') sale_date from dual
         union all
         select 'DENNY' salesman, 15 sales_count, to_date('04/01/2012', 'mm/dd/yyyy') sale_date from dual
         union all
         select 'JOHN' salesman, 30 sales_count, to_date('04/02/2012', 'mm/dd/yyyy') sale_date from dual
         union all
         select 'DENNY' salesman, 30 sales_count, to_date('04/02/2012', 'mm/dd/yyyy') sale_date from dual
         union all
         select 'JOHN' salesman, 45 sales_count, to_date('04/03/2012', 'mm/dd/yyyy') sale_date from dual
         union all
         select 'DENNY' salesman, 50 sales_count, to_date('04/03/2012', 'mm/dd/yyyy') sale_date from dual
    )
    select salesman,
           sales_count sales_todate,
           sale_date,
           sales_count - lag(sales_count, 1, 0) over (partition by salesman order by sale_date) daily_sales
    from t
    
    SALESMAN,SALES_TODATE,SALE_DATE,DAILY_SALES
    DENNY,15,4/1/2012,15
    DENNY,30,4/2/2012,15
    DENNY,50,4/3/2012,20
    JOHN,20,4/1/2012,20
    JOHN,30,4/2/2012,10
    JOHN,45,4/3/2012,15
          
    
  • SQL Query - to find users with the end of the responsibilities

    Oracle Apps worm: 11.5.10.2

    Oracle DB - 9i

    How can I list users and access given to them for a distribution Specifies any responsibility end being dated at the level of responsibility

    Sakshi,

    Try this, hope will solve your problem,

    Select a.user_name, a.description, c.RESPONSIBILITY_NAME, b.START_DATE, b.end_date
    fnd_user a.,
    B FND_USER_RESP_GROUPS_DIRECT,
    c fnd_responsibility_vl
    where a.user_id = b.user_id
    and b.RESPONSIBILITY_ID = c.RESPONSIBILITY_ID
    and a.user_id = 'ENTER_USER_ID';

    Thank you
    Anchorage :)

  • date picker default value appears only not in the sql query

    Hello

    I have a page as a table with a query similar to the following:

    Select emp_name, salary of emp_table where (hire_date) trunc = trunc (to_date (:P42_START_DATE))

    where P42_START_DATE is the name of a date picker.

    I put the date picker, "only when the current value in session state is null" and the value of being "select trunc (next_day(sysdate,'MON')-7) from dual;"-essentially the Monday of the current week, the type of source. I updated the date to 5 selector and the sequence of the region 10. Now, when I opened this page, no data gets pulled. I checked the source of the page and the value of the entry date picker is used to "November 17, 2008", but is not somehow reflected in the sql query.

    Data get retrieved if I put manually the date in the date picker, but I would like that it by default on Monday of this week. What I am doing wrong?

    Thank you

    Hello

    >
    "Article 1 of the Expression value is NULL" where is expression 1
    P42_START_DATE
    >

    Yes, that's correct - No. colon is required here as we don't not using the item as a variable binding, just name for the condition. In my tests, I put the calculation for:

    Name of article: P31_HIREDATE (put your P42_START_DATE here instead)
    Type: SQL query
    Point calculation: before header
    Calculation: SELECT TO_CHAR (TRUNC (SYSDATE, 'DAY'), 'DD-MON-RR') FROM DUAL

    My report SQL statement is:

    SELECT EMPNO,
    ENAME,
    HIREDATE
    FROM EMP
    WHERE NVL(HIREDATE, TRUNC(SYSDATE)) < TO_DATE(:P31_HIREDATE,'DD-MON-RR')
    

    My datepicker object has no special parameters - so:

    Name: P31_HIREDATE
    Display: Date Picker (DD-MON-RR)
    Source: Only when...
    Source type: static...
    The source value or expression: (empty)
    Default: (empty)

    And that's what I did to get: http://htmldb.oracle.com/pls/otn/f?p=55041:31

    Change the date that you like or click Reset to clear the cache (the calculation will be then reset the date to the current date and refiltrer the report)

    Andy

  • Access APEX_APPLICATION. G_F01 in a SQL query for a report

    APEX 4.0.2.00.07

    I have a standard report with check boxes. The SQL along the lines of:
    SELECT APEX_ITEM.CHECKBOX(1,empno,'CHECKED') " ",
           ename,
           job
    FROM   emp
    Then I have another report below, I want to drive based on the items checked in the first report. I know that the values of the checkbox in the APEX_APPLICATION. Collection of G_F01. Normally, these are accessible using pl/sql such as:
    FOR I in 1..APEX_APPLICATION.G_F01.COUNT LOOP
        DELETE FROM emp WHERE empno = to_number(APEX_APPLICATION.G_F01(i));
    END LOOP;
    But is it possible that I can access the collection from the sql for my second report.

    that is, I want my sql to be something like:
    SELECT empno, day_of_service
    FROM   emp_timesheet
    WHERE emp_no in <get access to the collection here>
    I was hoping that the collection box would be available in the APEX_COLLECTIONS view, but it doesn't seem to be there.

    Thank you
    John

    John,

    If the goal is to keep the values checked for another treatment then you could add them to a collection yourself.

    create a process on your page that looks like this:
    This will create your collection if not exist or don't delete everything currently in it if it exists and then insert your new selections.

    DECLARE
       l_col_name varchar2(30) := 'EMP_SELECTED';
    BEGIN
        apex_collection.create_or_truncate_collection(l_col_name);
        FOR I in 1..APEX_APPLICATION.G_F01.COUNT LOOP
            apex_collection.add_member(
                l_col_name,
                to_number(APEX_APPLICATION.G_F01(i))
            );
        END LOOP;
    END;
    

    your second question might look like this:

    SELECT empno, day_of_service
      FROM emp_timesheet
     WHERE empno in (select C001 empno
                       from apex_collections ac
                      where ac.collection_name = 'EMP_SELECTED')
    

    Edit
    Some people choose to create a view of some collection queries ontop that will be repeated throughout the application so we can just

    create view selected_emps as
    select C001 empno
      from apex_collections ac
     where ac.collection_name = 'EMP_SELECTED'   
    

    and your new query will look like:

    SELECT empno, day_of_service
      FROM emp_timesheet
     WHERE empno in (select empno
                       from selected_emps)
    

    See you soon,.

    Janet Tyson

    Published by: Tyson Janet on April 6, 2011 10:37

  • Dynamic SQL query

    Hi all

    I have a procedure that takes as an input parameter v_emp_id which is of type varchar.

    emp_id are sent separated by commas to v_emp_id. Ex: v_emp_id = 7,2,1

    In my code I use a cursor for loop recover data from the table emp like this

    I'm in (select * from emp where emp_id in v_emp_id) loop
    -----
    end loop;

    It does not work. How do I use dynamic sql statements to retrieve data by using the CURSOR LOOP FOR only?

    Thanks in advance

    MR Marie wrote:

    How do I use dynamic sql statements to retrieve data by using the CURSOR LOOP FOR only?

    Not with dynamic sql statements. I suggest you use collections:

    SQL> create or replace
      2    procedure p1(
      3                 p_empno sys.OdciNumberList
      4                )
      5      is
      6      begin
      7          for v_rec in (select ename from emp where empno in (select * from table(p_empno))) loop
      8            dbms_output.put_line(v_rec.ename);
      9          end loop;
     10  end;
     11  /
    
    Procedure created.
    
    SQL> set serveroutput on
    SQL> exec p1(sys.OdciNumberList(7566,7844,7900));
    JONES
    TURNER
    JAMES
    
    PL/SQL procedure successfully completed.
    
    SQL> 
    

    SY.

  • SQL query to get the numbers from 0 to 99

    How can we write a sql query to get values from 0 to 99... This should not come from any table
    SELECT LEVEL - 1
      FROM  DUAL
      CONNECT BY LEVEL <= 100
    /
    

    SY.

Maybe you are looking for