比如说函数 DUMMY_PACKAGE.DUMMY_FUNCTION('xxxx')的返回值是个布尔型,
怎么才能知道返回值是true还是false呢,
试了一下select DUMMY_PACKAGE.DUMMY_FUNCTION('xxxx') from dual,但是报错了,不能通过一句简单的select文来获得布尔型的值么?期待高手指导。谢谢!

解决方案 »

  1.   

    布尔型在oracle中不是有效的数据类型。只能在pl/sql里面使用而已。因为你连select true from dual 都不能。。
      

  2.   

    这个查询可以放在where中的吧,就像下面一样:
    select 1 from dual where regexp_like('aabbbcc','bbb');
    可以返回一行数据
    而select 1 from dual where regexp_like('aabbbcc','1111');
    则不返回数据
      

  3.   

    select nvl(max('true'),'false') tf from dual where DUMMY_PACKAGE.DUMMY_FUNCTION('xxxx') 
      

  4.   

    布尔类型可以用在PL/SQL中,但不能用在SQL中,你可以修改下函数的返回类型,用0、1代替。
      

  5.   

    这个应该是可以的,是不是你的函数有问题???SQL> select nvl(max('true'),'false') tf from dual where 1=1;TF
    ----------
    trueSQL> select nvl(max('true'),'false') tf from dual where 1=0;TF
    ----------
    false