函数中根据参数生成子表的问题
CREATE OR REPLACE FUNCTION FuryouDetail(
strJituDay IN CHAR,
strKyakuCode IN VARCHAR2,
strHinban IN VARCHAR2,
strKoutei IN VARCHAR2,
strFuryou IN CHAR,
strJituDayF IN CHAR,
strJituDayT IN CHAR)
RETURN VARCHAR2
IS
strResult VARCHAR2(4000);
dblAll NUMBER(10,2):=0;
BEGIN
FOR CUR IN ( SELECT
MI14.FURYOUNO,
NVL(TAB1.FURYOUVAL,0) FURYOUVAL
FROM
MI14,( SELECT
FURYOUITEM,
SUM(FURYOUVAL) FURYOUVAL
FROM
FI18
WHERE
----------------------------------------------------------------------
以下想根据参数是否为空来生成不同的AND条件 请问高手该如何解决???
JITUDAY = strJituday
AND
KYAKUSAKICODE = strKyakuCode
AND
HINBAN = strHinban
GROUP BY
FURYOUITEM) TAB1
-----------------------------------------------------------------------
WHERE
MI14.FURYOUNO=TAB1.FURYOUITEM(+))
LOOP
strResult:=strResult || CUR.FURYOUVAL || ',';
dblAll:=dblAll+TO_NUMBER(CUR.FURYOUVAL);
END LOOP;
strResult:=TO_CHAR(dblAll) || ',' || RTRIM(strResult,',');
RETURN strResult;
EXCEPTION
WHEN OTHERS
THEN
Return '';
END;