Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 как заджойнить Table-valued UDF в запрос?  [new]
McCar
Member

Откуда: Саратов
Сообщений: 775
Народ, подскажите какой должен быть синтаксис для приджойнивания table-valued User defined function.
Пробовал разные варианты.. хочу получить что то вроде такого

select lo.*, fn.parent_ord from L_ORDER lo join fnGET_PARENT_ORD(lo.c_order,lo.ORD_NUM) fn on 1=1
где fnGET_PARENT_ORD - UDF возращающая некую таблицу.
Этот запрос не работает говорит - "не удалось привязать составной идентификатор".
А как правильно то? полчаса гуглил не на нашел примеров...
3 июн 09, 13:02    [7260264]     Ответить | Цитировать Сообщить модератору
 Re: как заджойнить Table-valued UDF в запрос?  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
гуглите apply
3 июн 09, 13:06    [7260282]     Ответить | Цитировать Сообщить модератору
 Re: как заджойнить Table-valued UDF в запрос?  [new]
mike909
Member

Откуда:
Сообщений: 662
McCar,

select lo.*, fn.parent_ord 
from L_ORDER lo 
cross apply(
  select * 
  from fnGET_PARENT_ORD(lo.c_order,lo.ORD_NUM) 
) as fn
3 июн 09, 13:20    [7260371]     Ответить | Цитировать Сообщить модератору
 Re: как заджойнить Table-valued UDF в запрос?  [new]
McCar
Member

Откуда: Саратов
Сообщений: 775
Спасибо, то что надо.
3 июн 09, 13:30    [7260434]     Ответить | Цитировать Сообщить модератору
 Re: как заджойнить Table-valued UDF в запрос?  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
mike909
McCar,

select lo.*, fn.parent_ord 
from L_ORDER lo 
cross apply(
  select * 
  from fnGET_PARENT_ORD(lo.c_order,lo.ORD_NUM) 
) as fn
Зачем такие сложности?
Достаточно
select lo.*, fn.parent_ord 
from L_ORDER lo 
cross apply fnGET_PARENT_ORD(lo.c_order,lo.ORD_NUM) fn
3 июн 09, 13:40    [7260464]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить