Como posso declarar uma variável em uma função com valor de tabela? (como no meu título)
sql-server
function
user-defined-functions
e quadrado
fonte
fonte
Respostas:
Existem dois tipos de funções com valor de tabela. Aquele que é apenas uma instrução select e que pode ter mais linhas do que apenas uma instrução select.
Isso não pode ter uma variável:
Você tem que fazer assim:
fonte
VIEW
ao passo que um MSTVF se comporta mais como um procedimento armazenado opaco (embora com suas próprias vantagens em comparação com sprocs). Funções embutidas devem ter preferência sobre MSTVF. Se você precisar calcular e armazenar valores intermediários (como o resultado de uma expressão de função escalar complexa), use uma subconsulta.