|
|
|
UNION или один запрос
|
|||
|---|---|---|---|
|
#18+
Привет, смотрю вот довольно громоздкий запрос (стандартный) с 4 юнионами, часть таблиц повторяются, самые тяжелые поотдельности. Вот думаю стоит ли это дело перевязать в один запрос или может хуже быть, так и оставить. Что быстрее работает теоретически. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2017, 17:00 |
|
||
|
UNION или один запрос
|
|||
|---|---|---|---|
|
#18+
leprechaun, не попробуешь - не узнаешь... Переписывая, убедись, что исходный запрос и твой переделанный работают по одинаковой логике и возвращают идентичный результат. Если в результате замены 4-х юнионов у тебя получится запрос с условиями OR по тем таблицам, что " часть таблиц повторяются, самые тяжелые поотдельности", то не исключено, что оптимизатор их снова перепишет в юнион (смотреть план на предмет наличия/отсутствия конкатенациии прочих прелестей трансформации) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2017, 17:53 |
|
||
|
UNION или один запрос
|
|||
|---|---|---|---|
|
#18+
цель у переписывания какая? все работает ужасно медленно? или хочется чего-то пооптимизировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2017, 18:09 |
|
||
|
UNION или один запрос
|
|||
|---|---|---|---|
|
#18+
Работает медленно, но можно напортачить. Вопрос то в чем, при использовании UNION выполнится первый, потом второй и т.д. запросы в память, после чего они объединятся? Или текст оптимизируется в процессе выполнения. Для чего-то то же стандартный запрос разбили на части, хотя там таблицы можно было и связать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2017, 19:30 |
|
||
|
UNION или один запрос
|
|||
|---|---|---|---|
|
#18+
leprechaunВопрос то в чем, при использовании UNION выполнится первый, потом второй и т.д. запросы в память, после чего они объединятся? Или текст оптимизируется в процессе выполнения. Для начала ознакомьтесь с базовыми понятиями: https://docs.oracle.com/database/121/TGSQL/tgsql_optcncpt.htm#TGSQL196 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2017, 19:39 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=139&tid=1884990]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
56ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
3ms |
| others: | 201ms |
| total: | 348ms |

| 0 / 0 |
