curto-circuito da cláusula SQL WHERE é avaliad

Por exemplo

SELECT * 
FROM Table t 
WHERE @key IS NULL OR (@key IS NOT NULL AND @key = t.Key) 

E se tecla @@ É NULL avalia como verdadeiro, é tecla @@ NÃO É NULA E @key = t.Key avaliado?

Se não, por que não?

Se sim, é garantido? Faz parte do ANSI SQL ou é específico do banco de dados?

Se banco de dados específico, SqlServer? Oráculo? MySQL?

Reference:valiação de circuito curto

questionAnswers(14)

yourAnswerToTheQuestion