|
|
|
Получение результата из множественного вызова функции, возвращающей таблицу.
|
|||
|---|---|---|---|
|
#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&gotonew=1&tid=1996219]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
327ms |
get topic data: |
14ms |
get first new msg: |
8ms |
get forum data: |
4ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 198ms |
| total: | 645ms |

| 0 / 0 |
