|
|
|
вопрос про выбор какой view использовать
|
|||
|---|---|---|---|
|
#18+
есть базовая таблица А и подключенная к ней через inner join вьюшка есть два реализованных метода на разный случай, 1) когда в таблице А не задано доп условий и мы работаем со всеми значениями 2)когда в таблице А по условию в where определяется всего одно значение для обоих случаев есть своя вьюшка которая выгодно работает по времени: 1. подключенная вьюшка когда параметр А не задан работает примерно минуту но с заданным параметром А работает больше 15 сек 2. другая подключенная вьюшка с определенным условием А возвращает тот же результат за микросекунды, но если А не зададут то будет бесконечно долго считать и отвалиться можно сделать такую вьюшку чтобы если мы условие А не задаем (в таблице А много значений) то брали значения из вьюшки по первому способу иначе если работаем с единственным значением из А то брали результат из вьюшки по второму способу подскажите какие способы можно реалзовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 12:56 |
|
||
|
вопрос про выбор какой view использовать
|
|||
|---|---|---|---|
|
#18+
Legushkaесть базовая таблица А и подключенная к ней через inner join вьюшка есть два реализованных метода на разный случай, 1) когда в таблице А не задано доп условий и мы работаем со всеми значениями 2)когда в таблице А по условию в where определяется всего одно значение для обоих случаев есть своя вьюшка которая выгодно работает по времени: 1. подключенная вьюшка когда параметр А не задан работает примерно минуту но с заданным параметром А работает больше 15 сек 2. другая подключенная вьюшка с определенным условием А возвращает тот же результат за микросекунды, но если А не зададут то будет бесконечно долго считать и отвалиться можно сделать такую вьюшку чтобы если мы условие А не задаем (в таблице А много значений) то брали значения из вьюшки по первому способу иначе если работаем с единственным значением из А то брали результат из вьюшки по второму способу подскажите какие способы можно реалзовать? Хранимку написать с нужным поведением вместо view. Просто и понятно. -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 13:20 |
|
||
|
вопрос про выбор какой view использовать
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, подскажите плиз, есть ли возможность передать в виев параметр который отрабатывался в where внутри вьюшки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 14:06 |
|
||
|
вопрос про выбор какой view использовать
|
|||
|---|---|---|---|
|
#18+
LegushkaMaxim Boguk, подскажите плиз, есть ли возможность передать в виев параметр который отрабатывался в where внутри вьюшки? view это просто сохраненный запрос в скобках... все что вы в него можете передать определяется sql. И собственно view тут вообще непричем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 16:45 |
|
||
|
вопрос про выбор какой view использовать
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, ноги растут вот отсюда, скорее всего: http://www.sql.ru/forum/1196420/vozmozhno-li-opisat-cherez-join?mid=18709356#18709356 но саму проблему в коде ТС показать боится. или не может быстро сварганить макетик. Думаю, у него таки наперёд (т.е. иммутабно) известно, какая из ветвей должна работать. т.е. скорее всего проблему можно решить и для view. (передав параметры в where как массив). но так ли это -- не ясно. 2ТС. существуют TABLE (set) RETURNING ф-ии. Ведут себя, с т.з. потребителя, практически как вью. С тем исключением, что планировщик не может протолкнуть внешние ограничения -- во внутрь. И вынужден их накладывать на результат постфактум. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 17:10 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=97&tid=1997463]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
41ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 341ms |

| 0 / 0 |
