2015-05-11 3 views
0

У меня есть функция, которая имеет параметр varchar.Как вызвать функцию с переходом выбрать параметр

Я хочу, чтобы вызвать функцию и передать выберите результат функционировать как

Select * from dbo.myfunc(select name from users) 

Но я получаю эту ошибку:

Incorrect syntax near ')'

Что я могу сделать?

+2

Ваша ошибка в том, что вызов функции необходимо скобки как и подзапрос. У вас только один комплект. Однако передача подзапроса функции, которая имеет параметр varchar, в корне неверна. @ Ответ Parado выглядит довольно хорошо для меня. –

ответ

1

apply Использование:

Select f.* 
from users u cross apply 
    dbo.myfunc(u.name) as f; 
+0

что такое 'как f (....); ? –

+0

@PsarTak. , , Это называет результат функции. 'F'' является псевдонимом таблицы и'. , . являются столбцами. –

+0

Я получаю эту ОШИБКУ: 'Некорректный синтаксис около '.'.'. –

2

Может быть, как это:

select dbo.myfunc(name) from users 
+0

будет ли функция вызываться для каждой записи в таблице Users? – knkarthick24

+0

@ knkarthick24 Да, это будет – Parado

+0

@Parado Я получаю Это ERRO: –

Смежные вопросы