IF 문에서 데이터를 반환하려면 어떻게합니까? 그 문장의 결과에 따라 다른 결과를 반환하는 IF 문장이 있습니다.데이터를 반환 할 때 Oracle에서 IF 문 사용
IF :Value = 1 THEN
SELECT Name FROM TABLE_A
ELSEIF :Value = 2 THEN
SELECT Name FROM TABLE_B
ELSEIF :Value = 3 THEN
SELECT Name FROM TABLE_C
그러나 이것은 작동하지 않습니다. 이 선택 항목에는 INTO 문이 필요합니다. 오라클이 블록에서 복귀 할 수 없기 때문에 이것이 의심 스럽습니다.
데이터를 저장하거나 함수를 둘러보기 위해 테이블 변수를 만들지 않고도 해당 select 문을 빠르게 반환 할 수 있습니까?
IF는 plsql 문이며,'select * ....'는 sql입니다. 그들은 다른 언어입니다. 'execute immediate'을 사용하여 plsql에서 SQL 문을 실행하는 방법이 있습니다. 그러나 구현하려는 컨텍스트 또는 달성하려는 내용을 모르는 상태에서 다시 제안 할 사항이 없습니다. – Hawk