SQL:
SELECT u.*,
CASE
WHEN u.RYZT = 1 AND
MONTHS_BETWEEN(TO_DATE(u.HTJSSJ, 'YYYY-MM-DD'), SYSDATE) > 0 AND
MONTHS_BETWEEN(TO_DATE(u.HTJSSJ, 'YYYY-MM-DD'), SYSDATE) < 1 THEN
1
WHEN u.RYZT = 1 AND
MONTHS_BETWEEN(TO_DATE(u.HTJSSJ, 'YYYY-MM-DD'), SYSDATE) < 1 THEN
2
ELSE
0
END as sfdq,
dw.DWMC
FROM B_TZ_RYGL_RYXX u
case when :满足when后面的条件的时候,字段值设值。上例满足第一个when,新字段sfdq赋‘1’。满足第二个when,新字段sfdq赋‘2’,否则赋‘0’。经过尝试,貌似end后面的‘as’并不是必须加上去的。实际搜索后如图。