member of
をOracleで使用しようとしています。 テーブルタイプが数値か他のデータタイプの場合に使用できます。テーブルは以下のコードのように、レコードに基づいてされたとき、私はmember of
を使用するにはどうすればよい'Member of' in Oracle
declare
type t is table of number;
lt t;
begin
select channel_key
bulk collect into lt
from dim_channels;
if 22 member of lt then
dbms_output.put_line('ss');
end if;
end;
:以下は、このためのコードです。
declare
type rt is record
(
channel_key number(10),
channel_code varchar2(100)
);
type t is table of rt;
lt t;
lrt rt;
begin
select channel_key, channel_code
bulk collect into lt
from dim_channels;
end;
'type type_rec is record' - この操作では間違った型ですが、何らかの形でコンパイラがこれを逃したり、コンパイルに失敗しないように選択したり、実行時にクラッシュしたりします。あなたが 'set session set plsql_warnings = 'enable:all''を実行すると、' PLW-05022:引数' T_REC 'が(少なくとも12.1.0.2.0では)比較できないというコンパイラ警告が出ます。 –