검색 할 관련 정보가있는 테이블이 4 개 있습니다.여러 테이블의 최대 날짜 반환 oracle
테이블 : Staff_profile (STAFF_ID, STAFF_USERNAME, STAFF_NAME, STAFF_JOB_ID, STAFF_FACULTY_ID, STAFF_OFF_TEL, STAFF_EMAIL는)은 - 직원 정보를 보유하고
테이블 : RFMUSERHISTORY (uh_staff_id, UH_DATETIME)는 - 로그인 역사를 보유하고
테이블 : RFMUSERROLEJOBMAP (role_id, job_id)- maps role-2-job [이것은 작업 테이블 pr 전자는-존재하고이 새로운 응용 프로그램은
표 자신의 역할 테이블에 대해 사용하는 특정 작업 ID를 따기입니다 : RFMUSERROLE (USERROLE_CODE, USERROLE_ID)가 - 지금은 원하는 보유하고 사용자 역할 정보를
을 로그인 한 특정 사용자의 역할 및 직원 세부 정보를 포함하여 마지막 로그인 (userhistory에서 해당 사용자의 최대 날짜)을 얻습니다. 내 코드에 문제가있어 마침내 UH_datetime을 사용하여 해당 사용자의 모든 레코드를 선택했습니다. 내 최신 기록을 골라야 겠어.
제발 도와주세요.
SELECT a.STAFF_ID, a.STAFF_USERNAME, a.STAFF_NAME, a.STAFF_JOB_ID, a.STAFF_FACULTY_ID,
a.STAFF_OFF_TEL, a.STAFF_EMAIL, to_CHAR(b.UH_DATETIME,'Dy DD-MM-YYYY HH24:MI:SS')
AS UH_DATETIME, e.USERROLE_CODE, e.USERROLE_ID
FROM STAFF_PROFILE a
LEFT JOIN RFMUSERHISTORY b ON STAFF_ID=b.uh_staff_id
LEFT JOIN RFMUSERROLEJOBMAP d ON a.STAFF_JOB_ID=d.job_id
LEFT JOIN RFMUSERROLE e ON d.role_id=e.userrole_id
WHERE STAFF_ID=:eid1 ORDER BY b.UH_DATETIME DESC
감사합니다, 당신이 그들을 요청하기 전에
. 언급 한 바와 같이, 단일 직원 또는 모든 직원 결과에 대해 작업 할 수 있습니다. 새로운 교훈을 얻었습니다. – luhfluh