t1.pay是什麽數據類型?
如果是數字那麽
select nvl(t1.pay,0)
        into flag
        from users t
where userid=useridparam
如果是字符就要用
select nvl(t1.pay,‘0’)
        into flag
        from users t
where userid=useridparam

解决方案 »

  1.   

    select nvl((select t.pay
            from users t
    where userid=useridparam),0)
    into flag
    from dual;
      

  2.   

    select nvl(min(pay),0)
            into flag
            from users t
    where userid=useridparam
      

  3.   

    waterfirer(水清) ( ) 信誉:110 写的正确谢谢
      

  4.   

    select nvl(min(pay),0)
            into flag
            from users t
    where userid=useridparam或
    select nvl(max(pay),0)
            into flag
            from users t
    where userid=useridparam
    都行
    但这两个函数的意思与用法能说说吗?waterfirer(水清) (我从网上查了一下也不解其义
      

  5.   

    看看下面的例子就明白了SQL> select a from a;         A
    ----------
             1
             2
             3
             4
             5SQL> select a from a where a=6;未选定行SQL> select min(a) from a where a=6;    MIN(A)
    ----------
    SQL> select nvl(a,0) from a where a=6;未选定行SQL> select nvl(min(a),0) from a where a=6;NVL(MIN(A),0)
    -------------
                0