用if做判断,具体像下面这样的sql
SELECT 使用单位,使用方向,财政分类,资产入账年份,资产类型,经费来源
FROM V_ZC_TS_RJ_SB
WHERE 1=1
${IF(LEN(使用单位) == 0,"","AND 使用单位 IN('" + JOINARRAY(使用单位, "','") + "')")}
${IF(LEN(使用方向) == 0,"","AND 使用方向 IN('" + JOINARRAY(使用方向, "','") + "')")}
${IF(LEN(财政分类) == 0,"","AND 财政分类 IN('" + JOINARRAY(财政分类, "','") + "')")}
${IF(LEN(资产类型) < 1,"","AND 资产类型='"+资产类型+"'")}
${IF(LEN(总价MIN) != 0 || LEN(总价MAX) != 0,"AND 总价 BETWEEN NVL(" + 总价MIN + ",0) AND NVL(" + 总价MAX +",99999999999)","")}
${IF(LEN(经费来源) < 1, "", "AND 经费来源 LIKE '%" + 经费来源 + "%'")}