如何在不写多行的情况下检查我的case语句中的多个内容,检查每个案例。
我试过这个并且非常难看。
我想要像下面那样干净但不能让它发挥作用。
select CASE
WHEN (UPPER(NAME) IN ('%AVG%', '%AVERAGE%') AND
FORMATTED_ENTRY NOT IN('<', '>'))
THEN FORMATTED_ENTRY END actual_avg
FROM VALUES_TABLE
答案 0 :(得分:2)
假设您希望在这些百分号上进行通配符匹配:
CASE WHEN (
( UPPER(NAME) LIKE '%AVG%' OR UPPER(NAME) LIKE '%AVERAGE%' )
AND FORMATTED_ENTRY NOT IN('<', '>')
)
THEN FORMATTED_ENTRY END actual_avg