2013-11-19 7 views
0

Я сравнение нескольких строк переменного, например:PLSQL несколько строк сравнить

If (l_return != 'M') AND 
    (l_return != 'Y') AND 
    (l_return != 'W') AND 
    (l_return != 'D') AND 
    (l_return IS NOT NULL) then 

мне было интересно, если бы можно было написать PLSQL сравнить заявление, как это:

if var in ('stringone', 'stringtwo', 'stringthree'): 

Спасибо

ответ

0

Я понял это, синтаксис выглядит так:

If l_return not IN ('M','Y') then 
    l_return := 'ERROR'; 
end if; 
4

Вы можете. так же, как вы получили in вы также можете сделать not in, как это:

If l_return not in ('M','Y','W','D') then 
--code 
end if; 
2

Другой метод для одного сравнения строк символов заключается в следующем:

if InStr('MYWD',l_return) > 0 
    ... 
+0

И для строк нескольких символов, вы должны были бы включая какой-либо разделитель, например 'INSTR (': один: два: три:', ':' || l_return || ':')> 0' –

Смежные вопросы