Caused by: java.sql.SQLException: sql injection violation, syntax error: syntax error, expect RPAREN, actual IDENTIFIER pos 429, line 20, column 79, token IDENTIFIER INTEGER : SELECT
A .SYS_CODE,
ifnull(SUM(tnm),'0') TNM
FROM
(
SELECT
r.SYS_CODE,
cps.PROBLEM_ID,
cps.QUESTION_NM TNM,
cps.QUESTION_TO_BE_SOLVE BSO
FROM
t_dq_check_rule r
LEFT JOIN t_dq_check_problem_sum cps ON r.CHECK_RULE_ID = cps.CHECK_RULE_ID
WHERE
date_format(cps.start_dt,'%Y-%m-%d') >= date_format(now()-cast(? AS SIGNED INTEGER),'%Y-%m-%d')
AND r.SYS_CODE = ?
) A
GROUP BY
A .SYS_CODE
ORDER BY
A .SYS_CODE
结果改成date_format(cps.start_dt,'%Y-%m-%d') >= date_format(now()-cast(? AS SIGNED),'%Y-%m-%d')将其中的INTEGER去掉就可以了