serv_id = SERV_ID and acct_item_type_id = ACCT_ITEM_TYPE_ID  --这样等式相当于完全成立,即全部记录也取出来了。
修改如下:v_SERV_ID:= 424858;
v_ACCT_ITEM_TYPE_ID := 'A21';select count(*)
into a
ORDER_SERIAL_NBR
    from serv_acct 
          where (eff_date = (select max(eff_date) from serv_acct where serv_id = v_SERV_ID and acct_item_type_id = v_ACCT_ITEM_TYPE_ID)) and
                (serv_id = v_SERV_ID and acct_item_type_id = v_ACCT_ITEM_TYPE_ID);