SET APPLY_STATUS = CASE WHEN :applyStatus IS NULL THEN APPLY_STATUS ELSE :applyStatus END
, APPLY_STATUS_DISPLAY = CASE WHEN :applyStatusDisplay IS NULL THEN APPLY_STATUS_DISPLAY ELSE :applyStatusDisplay END
, UPD_USER = :updUser
, UPD_DATE = SYSDATE
WHERE APPLY_NO = :applyNo
这个不是很简单吗?CASE WHEN的写法就是一个判断而已,这代码的意思是更新T_APPLY_INFO表,当applyStatus 如何时空就取APPLY_STATUS ,否则就取applyStatus ,后面的一样的意思,就跟一个三元运算一样。如何觉得有用就采纳一下吧。
修改表T_APPLY_INFO的数据,根据 字段APPLY_NO 条件修改
:applyNo 是传的值
CASE when那里的意思是如果传入参数为空则不更新该字段