У меня есть оператор SQL, который я не написал, и я пытаюсь разобраться с ним.
CASE
WHEN (1 = 1) THEN A.AMT
WHEN (A.ACC_NO = '1') THEN A.AMT - 100000000
WHEN (A.ACC_NO = '2') THEN A.AMT - 100000000
WHEN (A.ACC_NO = '3') THEN A.AMT - 100000000
WHEN (A.ACC_NO = '4') THEN A.AMT - 100000000
WHEN (A.ACC_NO = '5') THEN A.AMT - 100000000
WHEN (A.ACC_NO = '6') THEN A.AMT - 100000000
ELSE A.FACE_AMT
END AS TRUE_AMT,
Может кто-нибудь объяснить, пожалуйста, что делает (1 = 1), пожалуйста?
Из исследования этого онлайн моя интерпретация заключается в том, что 1 = 1 означает всегда true, так что это будет означать, что оператор case будет всегда возвращать поле amt?
Однако это, кажется, не имеет смысла, поскольку это означало бы, что ни одно из других условий никогда не будет выполнено?