Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Оптимизация запроса / 6 сообщений из 6, страница 1 из 1
07.03.2018, 09:02
    #39611633
akaipbay
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
Доброго времени суток!

Подскажите как можно ускорить запрос? Несколько небольших таблиц соединяю с большими таблицами.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
SELECT brt.realizationdate,
 CASE interface_type
   WHEN 'APP_CNP' THEN
    'LH'
   ELSE
    'CNP'
 END channel,
 CASE ticc.type_
   WHEN 1 THEN
    'LOAN'
   WHEN 2 THEN
    'DEPOSIT'
   WHEN 3 THEN
    'CARD'
 END target,
 brt.amount,
 tiu.phone_number,
 tiu.cuid,
 tba.prod_dispatch_note_num
  FROM ap_it.t_ib_tbl_ib_card_cnp_transfer ticc
  JOIN ap_it.t_ib_tbl_ib_bank_account tba
    ON tba.id = ticc.target_acc_id
  JOIN owner_int.vh_obs_bc_realizedtransaction brt
    ON brt.idrequiredtransaction = ticc.cbs_req_tran_id
  JOIN owner_int.vh_obs_bc_bankaccount bba
    ON bba.idbankaccount = brt.idbankaccountcredit
  JOIN owner_int.vh_obs_bc_person bpe
    ON bpe.idperson = bba.idperson
  JOIN ap_it.t_ib_tbl_ib_user tiu
    ON tiu.cuid = bpe.personextid;

select count(1) from ap_it.t_ib_tbl_ib_card_cnp_transfer t; -- 89 333
select count(1) from ap_it.t_ib_tbl_ib_bank_account t; -- 97 458
select count(1) from owner_int.vh_obs_bc_realizedtransaction t; -- 1 423 789 583
select count(1) from owner_int.vh_obs_bc_bankaccount t;  -- 86 080 300
select count(1) from owner_int.vh_obs_bc_person t; -- 4 670 722
select count(1) from ap_it.t_ib_tbl_ib_user t; -- 3 902 449
...
Рейтинг: 0 / 0
07.03.2018, 09:44
    #39611648
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
akaipbayНесколько небольших таблиц соединяю с большими таблицами.Ты вот скажи, а на кой ляд те сдался весь лярд транзакций?
...
Рейтинг: 0 / 0
07.03.2018, 11:52
    #39611731
akaipbay
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
Elic, да согласен с Вами. Ярд мне незачем, не знаю как урезать эту большую таблицу производительным способом.
...
Рейтинг: 0 / 0
07.03.2018, 12:19
    #39611752
Alexander_Ttl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
akaipbay, так нужно урезать или оптимизировать запрос? Это разные задачи.
...
Рейтинг: 0 / 0
07.03.2018, 12:24
    #39611757
akaipbay
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
Alexander_Ttl, оптимизировать
...
Рейтинг: 0 / 0
07.03.2018, 12:38
    #39611764
Alexander_Ttl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оптимизация запроса
akaipbay, напишите поподробнее, цель какая и в чем сложность? Выгрузить таблицу целиком? В запросе нет ни одного ограничивающего условия, поэтому оптимизатор использует план, который даст максимальную скорость для выборки всех строк таблицы. Вполне логично, что сначала придется подождать. Если нужно первые n строк, то поможет хинт FIRST_ROWS
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Оптимизация запроса / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]