sql >> Database >  >> RDS >> Oracle

Functie of procedure voor een IN-clausule

Hier is een werkend voorbeeld van de oplossing voor geneste tabellen, waarbij de EMP-tabel wordt gebruikt:

create type t_ids is table of integer
/

create or replace function get_office_ids return t_ids
is
   l_ids t_ids := t_ids();
   l_idx integer := 0;
begin
   for r in (select empno from emp where deptno=10)
   loop
      l_ids.extend;
      l_idx := l_idx+1;
      l_ids(l_idx) := r.empno;
   end loop;
   return l_ids;
end;
/

select ename from emp where empno in (select * from table(get_office_ids));


ENAME
----------
CLARK
KING
TEST
MILLER
BINNSY
FARMER


  1. PHP-array opslaan in MySQL?

  2. Spreadsheets versus databases:is het tijd om over te stappen? Deel 2

  3. Hernoem Oracle-tabel of -weergave

  4. Flask-SQLAlchemy Index met kleine letters - functioneel overslaan, niet ondersteund door SQLAlchemy-reflectie