Как применить логику if / else в предложении where? - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть логика, которая основана на утверждении If/Else.Это должно применяться в SQL, где фильтр предложений.Вот пример того, как это должно выглядеть:

if (type = 'DEV') { // If type is DEV then status should be Y
   status = 'Y'
}else{ // If not do not apply filter
   1=1
}

Я пробовал это в SQL:

WHERE id IN (89,56,87)
   AND ( 
           (type = 'TRNG' AND status = 'Y') 
           OR 
           (1=1)
        )

Мне интересно, есть ли способ добиться того, что я имею воператор if / else?

1 Ответ

0 голосов
/ 06 февраля 2019

Если я следил за вами правильно, вы, похоже, ищете:

WHERE id IN (89,56,87) AND ( type <> 'DEV' OR status = 'Y') 

Это значит: если type равно 'DEV', то status должно быть равно 'Y'.Это означает, что если type отличается от DEV, то допускается любое значение status.

...