|
Получение результата из множественного вызова функции, возвращающей таблицу.
|
|||
---|---|---|---|
#18+
Доброго времени суток. Исходные данные: есть таблица t(id int primary key). Есть функция f(id int), которая возвращает таблицу из двух полей, количество возвращаемых строк неизвестно. Нужно получить все таблицы, которые возвращает функция f, объединенные в одну таблицу. Вижу два варианта: 1) SELECT t.id, m.f1, m.f2 FROM t JOIN f(t.id) AS m ON 1 = 1; 2) хранимка, в которой курсором пробегаем по таблице t, нужное количество раз вызываем f и добавляем результат к возвращаемому массиву. В 9.6 join-овый отработал быстрее. Нет ли идей/инфы насчет best pratices подобной задачи? Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2017, 21:08 |
|
|
start [/forum/topic.php?fid=53&fpage=66&tid=1996219]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 290ms |
total: | 431ms |
0 / 0 |