Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Processamento de consulta em lote SQL (matriz de entrada de consulta SQL)


Você ainda precisa executar essa função 100 vezes para cada linha, certo? Não vejo nenhum atalho aqui.

Se você quisesse pegá-los todos de uma vez, você poderia fazer
SELECT dbo.func(@param1, a.point) as fValue1, 
       dbo.func(@param2, a.point) as fValue2 ...

ou algo assim, mas fazer um loop por eles parece mais eficiente para mim de qualquer maneira.

Suponho que você possa usar um cursor para recuperar cada a.point valor uma vez, então aja 100 vezes, mas isso é muita codificação e não necessariamente uma solução mais simples.