与OR时的情况

时间:2016-04-18 20:33:43

标签: sql postgresql case-when

有一种方法可以使用OR和CASE WHEN,就像这样?

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

1 个答案:

答案 0 :(得分:2)

是的,你正在考虑它。您可以在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