제목이 헷갈려서 죄송합니다. 두 번째로 읽어도 이해가 안 됐어요.
여기에 자세한 설명이 있습니다.
이름, 금액, 직원 열이있는 "수상"이라는 테이블이 있습니다.
다음 열이있는 다른 테이블 "Employee": Emp_Id, Emp_Name
그리고 "Awards"테이블의 직원 열에는 "01,20"값이 있는데, 이는 실제로 "Employee"테이블을 참조하는 직원 ID입니다.
"수상"쿼리를 선택하여 직원 이름을 얻을 수있는 방법이 있습니까?
데이터베이스를 변경했습니다 (테이블을 하나 더 추가했습니다). 이미 CODE 변경을 시작했습니다.
WITH t AS
(
Select emp_name from employee where emp_id in (
select regexp_substr(Employee ,'[^,]+', 1, level) from awards
connect by regexp_substr((select Employee from awards ), '[^,]+', 1, level) is
not null)
)
SELECT LTRIM(SYS_CONNECT_BY_PATH(emp_name, ','),',') emp_name
FROM ( SELECT emp_name,
ROW_NUMBER() OVER (ORDER BY emp_name) FILA
FROM t )
WHERE CONNECT_BY_ISLEAF = 1
START WITH FILA = 1
CONNECT BY PRIOR FILA = FILA - 1
그것은 일시적이고 나는 그것에 대해 거의 이해하지 못합니다.
도움과 제안에 감사드립니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다