|
|
|
Оптимизация отбора запроса
|
|||
|---|---|---|---|
|
#18+
Приветствую, уважаемые гуру. Ситуация: необходимо выбрать поле из таблицы final_table , с отбором по полю t_1_id из таблицы t_1 . Таблица t_1 с отбором по полю t_2_id из таблицы t_2. А таблица t_2 с отбором по полю number = 555. Есть 2 варианта реализации: параллельным запросом - Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. или вложенным - Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Сейчас таким образом выбирается очень маленький объем данных, и я не могу сравнить производительность нормально. Какой вариант более предпочтителен по производительности? Возможно, это как-то стандартизировано и описано, а я не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:18:08 |
|
||
|
Оптимизация отбора запроса
|
|||
|---|---|---|---|
|
#18+
первый. называется INNER JOIN ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:19:54 |
|
||
|
Оптимизация отбора запроса
|
|||
|---|---|---|---|
|
#18+
ScareCrow, т.е. INNER JOIN последовательно между таблицами ? Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:28:12 |
|
||
|
Оптимизация отбора запроса
|
|||
|---|---|---|---|
|
#18+
Твой первый и последний запросы абсолютно идентичны. Не текстом - но оба генерируют абсолютно одинаковый псевдокод. Именно такая форма предпочтительна, особенно если на таблицах имеются необходимые для нормальной работы запроса индексы. Вариант же с вложенными подзапросами почти наверняка приведёт к генерации временных таблиц, а при объёмных данных лежать им на диске, что выполнения ни разу не ускорит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:44:04 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1834335]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
8ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 340ms |

| 0 / 0 |
