2015-10-01 2 views
0

Мне нужно извлечь данные с последней датой в процедуре оракулакак получить последнюю дату из таблицы в процедуре оракула

  BEGIN 
       SELECT NVL(MONTHLY_SAL, 0) 
        INTO v_emp_salary 
        FROM EMP_SALARY 
       WHERE EMPNO = file_row(k).EMPNO 
       AND LATEST DATE = file_row(k).MODDATE; 
      EXCEPTION WHEN NO_DATA_FOUND THEN 
        v_emp_salary := 0; 
      END; 

Здесь EMP_SALARY может иметь 2 или больше строк, мне нужно сравнить MODDATE с последней датой в EMP_SALARY

ответ

2

Вы пробовали использовать MAX()?

select * from oehr_employees WHERE HIRE_DATE = (SELECT MAX(HIRE_DATE) FROM OEHR_EMPLOYEES) 

ВЫВОД:

EMPLOYEE_ID FIRST_NAME   LAST_NAME     EMAIL      PHONE_NUMBER   HIRE_DATE JOB_ID   SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID 

167 Amit Banda ABANDA 011.44.1346.729268 21-APR-00 SA_REP 6200 0.1 147 80 
173 Sundita Kumar SKUMAR 011.44.1343.329268 21-APR-00 SA_REP 6100 0.1 148 80 
Смежные вопросы