|
|
|
Получение результата из множественного вызова функции, возвращающей таблицу.
|
|||
|---|---|---|---|
|
#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&msg=39525150&tid=1996219]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 318ms |

| 0 / 0 |
