CASE WHEN 与 OR

CASE WHEN with OR

有一种方法可以像这样在 CASE WHEN 中使用 OR 吗?

SELECT
    case 'brasil'   
    when 'chile' OR 'brasil' THEN   
                        'ok'
    when 'argentina' then
        'ok2'
    when 'venezuela' THEN
        'ok3'
    ELSE
        'chaves'
end;

是的,你想的没错。您可以在 select..case 语句中使用 OR 或 IN:

select

  case
  -- one way or writing OR
  when country = 'brasil' or country = 'chile' then '....'
  -- another way of writing OR
  when country in ('china', 'japan') then '...'
  else '..'
  end

from tablename;

示例:http://sqlfiddle.com/#!15/c1cef/2