Я стараюсь не использовать IF
s, если я могу избежать этого, потому что они не являются транзакционными, то есть вы, как правило, не гарантируете, что условие IF
все еще будет действовать в блоке BEGIN... END
IF
.
Я предполагаю, что вы имеете в виду, например, использование CASE
операторов внутри SQL SELECT
. Если использование предназначено, чтобы избежать IF
, тогда, конечно, сделайте это.
Золотое правило SQL: позвольте серверу выяснить, КАК что-то делать, скажите серверу, чего вы ХОТИТЕ .