0

pl / sql関数のセットがあり、すべてブール型を返します。
これらの関数を別のpl/sql関数から1つずつ呼び出します。結果を「蓄積」して、その関数から返したいと思います。

例えば:

  v_res  boolean;
  v_res2 boolean := true;
begin
  v_res := f1('aa');
  if v_res = false then
    v_res2 := false;
  end if;

  v_res := f2('aa');
  if v_res = false then
    v_res2 := false;
  end if;

  -- some other calls to other functions

  return v_res2;
end;

疑問に思っていたのですが、pl / sqlでブール演算を実行できますか?
私はこのようなものを意味します:

  v_res boolean := true;
begin
  v_res := v_res * f1('aa');
  v_res := v_res * f2('aa');
  -- more calls to functions
  return v_res;
end;

私は試した:

v_res := v_res * false;

v_res := v_res and false;

しかし、機能しているように見える唯一のことは、ブール値をintに変換することでした(私はsys.diutil.bool_to_intで試しました)。

4

1 に答える 1

3
begin
  return f1('aa')
     and f2('aa')
     ... etc. ...
     ;
end;
于 2012-05-29T01:05:47.430 に答える